我想從geonames.org(http://download.geonames.org/export/dump/cities5000.zip)與python的csv模塊解析cities5000.txt
並獲得非常奇怪的行爲:cvs
不分割文件中的所有行。奇怪的python csv模塊的行爲 - 不要分裂記錄
例如:
>>> len(open('cities5000.txt').read().splitlines())
46955
>>> len(list(csv.reader(open('cities5000.txt'))))
46955
# but here comes some fun
>>>len(list(csv.reader(open('cities5000.txt'), delimiter='\t')))
46048
和'\t'
- 在這個文件中使用的實際分隔符。所以大約有900條記錄被認爲是其他記錄領域的一部分。但是在解析的數據中一切都很好。
問題是:這是什麼原因,我怎麼能逃脫它沒有手動分裂所有這些記錄?
我得到與該文件不同的結果。前兩個打印「46957」和最後一個打印出錯。 – 2014-09-12 13:07:13
@LevLevitsky與最後一個提高'_csv.Error:字段大於字段限制(131072)' – Gnijuohz 2014-09-12 13:08:21
相同,這實際上是同樣的問題 - 它試圖將很多行放入一個字段。也許,我有一箇舊版本的文件,所以數據有點不同。無論如何,我已經有一個答案,謝謝你試圖幫助 – Cassum 2014-09-12 13:20:51