假设我有两个 CSV 文件(file1 和 file2),其内容如下所示:
文件1:
fred,43,Male,"23,45",blue,"1, bedrock avenue"
文件2:
fred,39,Male,"23,45",blue,"1, bedrock avenue"
我想比较这两个 CSV 记录,看第 0、2、3、4 和 5 列是否相同。我不关心第 1 列。
执行此操作的最 pythonic 方法是什么?
编辑:
一些示例代码将不胜感激。
编辑 2:
请注意嵌入的逗号需要正确处理。
最佳答案
我想最好的方法是使用 Python 库:http://docs.python.org/library/csv.html .
更新(添加示例):
import csv
reader1 = csv.reader(open('data1.csv', 'rb'), delimiter=',', quotechar='"'))
row1 = reader1.next()
reader2 = csv.reader(open('data2.csv', 'rb'), delimiter=',', quotechar='"'))
row2 = reader2.next()
if (row1[0] == row2[0]) and (row1[2:] == row2[2:]):
print "eq"
else:
print "different"
关于Python:比较两个 csv 文件中的特定列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4700441/