是否可以在python中比较csv和文本文件的值?

时间:2010-08-30 06:03:59

标签: python csv

我有一个csv文件和一个文本文件。是否可以比较两个文件中的值?或者我应该在csv文件中使用两者的值以使其更容易?

3 个答案:

答案 0 :(得分:3)

  

是否可以比较这些值   在两个文件中?

是。您可以在二进制模式下打开它们,比较字节,或在文本模式下比较字符。但是,两者都不会特别有用。

  

或者我应该具有两者的值   一个csv文件,以使它更容易?

将它们转换为列表列表格式。对于CSV文件,请使用csv.reader。对于文本文件,请使用[line.split('\t') for line in open('filename.txt')]或等效的文件格式。

答案 1 :(得分:2)

是的,您可以比较任何N个来源的值。您必须从每个值中提取值,然后进行比较。如果您提出更具体的问题(例如文本文件的格式),我们可以为您提供更多帮助。

答案 2 :(得分:2)

csv本身也是文本。这基本上是“比较”时的问题,没有“文本文件标准”。即使是csv也没有严格定义,也没有正常形式。例如,是否应包含标题?列排序是否相关?

如何在文本文件中分隔字段?固定宽度记录?换行?特殊标记(如csv)? , 如果您知道文本文件的格式,您可以读取/解析它并将结果与​​csv文件(当然也需要读取/解析)进行比较,或者从文本文件生成csv并使用diff进行比较。 / p>