我在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