在Python中重复读取CSV文件?
我正在尝试将提取的数据值与我已有的一个csv文件进行比较。这个过程只会遍历csv文件中的每一行一次,我只能检查feed.items()中的一个值。请问我需要在某个地方重置一下值吗?有没有更好或更有效的方法来做到这一点?谢谢。
orig = csv.reader(open("googlel.csv", "rb"), delimiter = ';')
goodrows = []
for feed in gotfeeds:
for link,comments in feed.items():
for row in orig:
print link
if link in row[1]:
row.append(comments)
goodrows.append(row)
2 个回答
15
把 orig
变成一个列表,这样就不用重新设置或重新解析csv文件了:
orig = list(csv.reader(open("googlel.csv", "rb"), delimiter = ';'))
46
你可以通过重置文件对象的读取位置来“重置”CSV迭代器。
data = open("googlel.csv", "rb")
orig = csv.reader(data, delimiter = ';')
goodrows = []
for feed in gotfeeds:
for link,comments in feed.items():
data.seek(0)
for row in orig:
print link
if link in row[1]:
row.append(comments)
goodrows.append(row)