2010-08-30 47 views
0

我有一個csv文件和一個文本文件。有可能比較兩個文件中的值嗎?或者我應該在csv文件中使兩者的值更容易?是否可以比較python中的csv和文本文件的值?

+0

你想比較整個文件或文件的特定部分? – 2010-08-30 06:20:09

+0

CSV *是*「文本」。標籤分隔值也是如此。 '/ etc/passwd'格式也是如此。固定寬度的文本也是如此。 JSON也是如此。 XML也是如此。編程語言源代碼也是如此。你必須更具體。 – dan04 2010-08-30 06:23:45

回答

2

是的,您可以比較來自N個來源的值。你必須提取每個值然後比較它們。如果您提出更具體的問題(例如文本文件的格式),我們可能會幫助您更多。

2

csv本身當然也是文本。這基本上是「比較」時的問題,沒有「文本文件標準」。即使csv不是嚴格定義的,也沒有正常的形式。例如,是否應該包含標題?列順序是否相關?

字段在文本文件中如何分隔?固定寬度記錄?換行?特殊標記(如csv)? , 如果你知道文本文件的格式,你可以讀/解析它,並將結果與​​csv文件進行比較(你當然也需要讀/解析),或者從文本文件生成csv,並比較使用差異。

3

是否可以比較兩個文件中的值 ?

是。您可以在二進制模式下打開它們,比較字節或在文本模式下比較字符。但是,這兩者都不會特別有用。

或者我應該在 的一個csv文件中使值更容易嗎?

將它們轉換爲列表列表格式。對於CSV文件,請使用csv.reader。對於文本文件,使用[line.split('\t') for line in open('filename.txt')]或任何等效文件格式。