我试图将文本文件的行读入python中的列表或数组。我只需要能够单独访问列表或数组中的任何项目后,它被创建。
文本文件的格式如下:
0,0,200,0,53,1,0,255,...,0.
哪里…在上面,有实际的文本文件有数百或数千个项目。
我正在使用下面的代码来尝试将文件读入一个列表:
text_file = open("filename.dat", "r")
lines = text_file.readlines()
print lines
print len(lines)
text_file.close()
我得到的输出是:
['0,0,200,0,53,1,0,255,...,0.']
1
显然,它是将整个文件读入一个只有一个项的列表,而不是一个包含单个项的列表。我做错了什么?
这个问题问的是如何将逗号分隔的值内容从文件读入可迭代列表:
0,0,200,0,53,1,0,255,... , 0.
最简单的方法是使用csv模块,如下所示:
import csv
with open('filename.dat', newline='') as csvfile:
spamreader = csv.reader(csvfile, delimiter=',')
现在,你可以像这样轻松地遍历垃圾邮件阅读器:
for row in spamreader:
print(', '.join(row))
更多示例请参见文档。
这个问题问的是如何将逗号分隔的值内容从文件读入可迭代列表:
0,0,200,0,53,1,0,255,... , 0.
最简单的方法是使用csv模块,如下所示:
import csv
with open('filename.dat', newline='') as csvfile:
spamreader = csv.reader(csvfile, delimiter=',')
现在,你可以像这样轻松地遍历垃圾邮件阅读器:
for row in spamreader:
print(', '.join(row))
更多示例请参见文档。