csv阅读器是文件的迭代器。遍历一次后,您将读取文件的末尾,因此不再需要阅读。如果您需要再次进行遍历,则可以查找到文件的开头:
fh.seek(0)
这会将文件重新设置为开头,因此您可以再次阅读。根据代码,可能还需要跳过字段名称标头:
next(fh)
这对于您的代码来说是必需的,因为DictReader
第一次使用该行来确定字段名称,因此不再需要这样做。对的其他用途可能没有必要csv
。
如果文件不是太大,并且您需要对数据做几件事,那么您也可以将整个内容读入一个列表中:
data = list(read)
然后,您可以做自己想做的事情data
。