我有多个文件,假设 data{1..10}.txt
位于文件夹 data/
我需要将这些文件读入python环境以供进一步使用,我想到的示例代码是:
chr_list = []
x = 0
for item in range(10):
datafile="data/data"+str(i+1)+".txt"
chr_list[x] = open(datafile, "r")
x += 1
预期结果是
print(chr_list[0])
#prints out content of file data/data1.txt
即使在更正所有可能的错误后,此代码也无法工作。因此,我想看一些关于如何达到我想要的结果的例子。
最佳答案
正如 Thierry Lathuille 指出的那样,要获取文件的内容,您必须实际调用 read
方法。如果不调用它,您将获得打开文件的列表,而不是其内容。您还可以使用 for 循环计数器来缩短代码,而不是增加自己的值。
新代码:
chr_list = []
for x in range(10):
datafile="data/data"+str(i+1)+".txt"
chr_list.append(open(datafile).read())
编辑:
该错误是由于您无法通过引用新索引将项目添加到列表中 - 您必须使用 append
方法。
编辑2:
您还可以使用列表推导式来减少代码:
chr_list = [open("data/data"+str(i+1)+".txt").read() for i in range(10)]
关于python - 如何读取并分配给变量/列出多个文本文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59444667/