【发布时间】:2019-12-18 02:30:23
【问题描述】:
我有一个名为“datavalues.csv”的 csv 文件。它有大约 20,000 个值,我很好奇其中有多少值超过 10,000。
我有以下代码,但我不断收到以下错误ValueError: I/O operation on closed file
#!/usr/bin/python
import csv
with open('datavalues.csv', 'rb') as datavalues:
datavaluesreader = csv.reader(datavalues, delimiter=',')
print(sum(x >= 10000 for x in datavaluesreader))
【问题讨论】:
-
尝试将
print移动到with中。不过,数据可能是字符串,因此您必须将它们转换为整数。 -
x是行。您必须选择一个单元格并转换为整数。例如sum(int(x[0]) >= 10000 for x in datavaluesreader)
标签: python csv for-loop if-statement