我试图从csv文件中读取数据。我将quotechar设置为csv.QUOTE_NONE。
我为此编写的四行Python如下-
import csv
with open('mtz.gps.comfort_gps_logs_20110214_20110215.csv', 'rb') as csvfile:
taxiDataReader = csv.reader(csvfile, delimiter = ',', quotechar = csv.QUOTE_NONE)
for row in taxiDataReader:
print row
但是,当我运行这些命令时,我会收到一条错误消息-
Traceback (most recent call last):
File "log.py", line 3, in <module>
taxiDataReader = csv.reader(csvfile, delimiter = ',', quotechar = csv.QUOTE_NONE)
TypeError: "quotechar" must be an 1-character string
我不仅想了解为什么会出现这种特殊的错误,而且更详细地了解quotechar的真正作用是什么。
QUOTE_NONE
是指参数quoting
的值,而不是quotechar
。正确的方法是
The docs state即
quotechar
必须始终是一个单字符字符串,其作用只是选择引用时应使用的字符。引用在很多情况下都是必要的,例如
在这两种情况下,CSV阅读器都需要知道这些字符是作为文字字符而不是作为控制字符。所以,如果您想将值
[1, "hello", "1,2,3", "hi\nthere"]
放入CSV文件,如果结果是不是吗?因此,引用这些字段:
quoting
控制引用的时间(默认为QUOTE_MINIMAL
,即仅当绝对需要引用时)。如果完全关闭引号(QUOTE_NONE
),那么quotechar
的值当然毫无意义。相关问题 更多 >
编程相关推荐