我在R編程,但在這個項目中,我正在使用Python。Python地圖讀取多個.txt文件
在R我瞭解到,我應該避免for loops
到apply
方法來獲得更快的運行時間(和更簡單的代碼寫入),但我有麻煩在python中這樣做。
我有這樣的文本文件名稱的數組:
texts = ["a.txt", "b.txt", "c.txt"]
我讀這樣的文件(注意,編解碼器是必需的):
f = codecs.open(texts[0], "r", "ISO-8859-1").read()
什麼我想要的是讀取「a.txt」,「b.txt」和「c.txt」,我試過的是:
f = map(codecs.open("r", "ISO-8859-1").read(), texts)
但它沒有工作,並且for loop
是不可行的,因爲我有很多文件和文件夾。
我工作圍繞此代碼,我得到的錯誤是:
ValueError: mode string must begin with one of 'r', 'w', 'a' or 'U', not 'ISO-8859-1'
或
IOError: [Errno 2] No such file or directory: 'r'
'map'只是一個美化'for'循環。 – ForceBru
不要害怕在python中使用for循環。與R不同,它是做事的常用方式。 –
'f = map(lambda x:codecs.open(x,「r」,「ISO-8859-1」).read(),texts)'。您需要實際將文件名稱提供給打開的函數。 – Abdou