【发布时间】:2019-01-03 13:32:15
【问题描述】:
使用python 3。在下面的代码中,第二个循环不会打印,不知道为什么。
忽略我正在尝试做的事情,重点是在第一个循环之外无法访问该文件...
有什么想法吗?谢谢!!
Import csv
f = open('table.csv')
csv_f = csv.reader(f)
# Convert data entries to integers
for row in csv_f:
if row[0]!="A": row[1:len(row)]=list(map(int,row[1:len(row)]))
print(row)
# Print table again
for row in csv_f:
print(row)
【问题讨论】:
-
这是一个 python 功能,可防止您在未关闭的情况下保持文件指针打开。考虑在docs.python.org/3/library/csv.html#csv.reader 中将您的 csv 读取到内存中吗?
-
@Evgeny 不正确。发生这种情况是因为
csv_f是一个迭代器,在您迭代一次后会耗尽。您可以根据需要保持手柄打开。
标签: python-3.x import-csv