我认为这可能是一件简单的事情,但经过一个小时的搜索,我仍然没有找到我做错了什么。
我正在使用以下代码读取一个CSV文件 - 我没有问题读取文件,但当一行包含由于包含分隔符而被双引号括起来的字段时,CSV阅读器会忽略双引号并将该字段解析为2个单独的字段。
这是我正在使用的代码:
myReader = csv.reader(open(inPath, 'r'), dialect='excel', delimiter=',', quotechar='"')
for row in myReader:
print row,
print len(row)
我的输入:
hello, this is row 1, foo1
hello, this is row 2, foo2
goodbye, "this, is row 3", foo3
这给了我:
['hello', ' this is row 1', ' foo1'] 3
['hello', ' this is row 2', ' foo2'] 3
['goodbye', ' "this', ' is row 3"', ' foo3'] 4
我需要更改什么才能让它将双引号字段识别为一个字段?我正在使用Python版本2.6.1。谢谢!
csv.reader()
有skipinitialspace
选项来处理那些空格。 - MERose