<p>我现在有一个脚本版本,它通过将两个csv文件逐个读取到一个列表/集合中来比较两个csv文件。
但是,csv目前太大,无法存储,所以我想逐行迭代并打印出不同的行。</p>
<p>我不能做两个csvreaders循环,因为这样内部循环将读取整个文件,而外部循环将在第一行</p>
<p>我宁愿这样做,而不是差异,这样当行不匹配时,我可以打印出额外的信息来找出原因</p>
<p>编辑:到目前为止,我做了这样的事情,但是csv太大了,不能一次加载到列表中</p>
<pre><code>def readFile(filename,columns):
mylist=[]
with open(filename,'rb') as f:
reader = csv.reader(f)
for line in reader:
mylist.<a href="https://www.cnpython.com/list/append" class="inner-link">append</a>(tuple(line[i] for i in columns))
return mylist
mylist1=readFile(filename1,columns)
mylist2=readFile(filename2,columns)
diff1=diff(mylist1,mylist2)
diff2=diff(mylist2,mylist2)
</code></pre>