您好我正在尝试操作csv文件,如下所示
import csv
data=csv.reader(open('data.csv', 'rb'))
a= [row for row in data]
print a
代码的输出是(以逗号为单位的行 - >以列表格式显示):
[['aaaaa', '1234234'], ['bbbb', '2343536'], ['cccc', '5675675'], ['dddd', '2344234'], ['eeee', '5435324'], ['fffffff', '4353442']]
当我使用
时,我将获得空值print [row for row in data]
我会帮助你了解这种困惑。谢谢
答案 0 :(得分:0)
csv.reader
返回一个迭代器,它只适用于一次传递数据。你可能试图两次迭代data
;第二次,interator中没有内容,所以
print [row for row in data]
打印一个空列表。
如果您想多次迭代data
并拥有足够的内存,可以将data
转换为列表:
data = list(csv.reader(open('data.csv', 'rb')))
如果内存不足,则必须再次解析CSV。