7

コンマの周りにスペースがある CSV ファイルがあるとします。

'1','2','3',   '4'
'5','6','7',   '8'

Python CSV パッケージを使用すると、4との8値は異なる方法で処理されます。

>>> with open('/tmp/nums.csv','rU') as fin:
...    for row in csv.reader(fin,quotechar="'"):
...       print row
... 
['1', '2', '3', "   '4'"]
['5', '6', '7', "   '8'"]

CSV モジュールを使用してこれを修正する方法はありますか? 私は自分でファイルを読み取って解析できることを知っていますが、これを修正するための CSV パッケージに方言設定があるかどうかに興味があります。

4

1 に答える 1

13

区切り文字に続く空白をスキップするには、 に設定skipinitialspaceします。True

の場合、区切りTrue文字の直後の空白は無視されます。デフォルトは です。False

デモ:

>>> import csv
>>> demo='''\
... '1','2','3',   '4'
... '5','6','7',   '8'
... '''
>>> for row in csv.reader(demo.splitlines(True), skipinitialspace=True, quotechar="'"):
...     print row
... 
['1', '2', '3', '4']
['5', '6', '7', '8']
于 2013-06-22T22:12:03.547 に答える