python - 如何读取并分配给变量/列出多个文本文件?

标签 python

我有多个文件,假设 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/

相关文章:

python - 在 shell/python 中传递变量

python - Flask-migrate 删除由 Celery 创建的表

python - 创建一个Numpy FFT带通滤波器

javascript - Python2.7 : get html of website, href 变为 "javascript:void(0)"

Python - Seaborn fiddle 情节,没有做我想做的事

python - 计算字符串列之间的相关性

python - Scrapy 抓取刀无法抓取过第一页

python - crontab、python脚本运行失败

python - Alembic:alembic 修订版显示导入错误

Python 2.7.11 : How to read (big) binary file from/at hex offset