【发布时间】:2011-07-29 22:17:56
【问题描述】:
我认为这可能很简单,但经过一个小时的搜索,我没有弄清楚我做错了什么。
我正在使用以下代码读取 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 版。
谢谢!
【问题讨论】: