gpt4 book ai didi

python - python 2 中的 csv 阅读器出现问题

转载 作者:太空宇宙 更新时间:2023-11-04 03:43:10 24 4
gpt4 key购买 nike

我无法让 python 2 循环遍历 .csv 文件。下面的代码抛出错误:

>>> import csv
>>> with open('test.csv', 'rb') as f:
... reader = csv.reader(f)
... for row in reader:
... print row
...
Traceback (most recent call last):
File "<stdin>", line 3, in <module>
_csv.Error: new-line character seen in unquoted field - do you need to open the file in universal-newline mode?

这个的 python 3 版本工作正常,但我需要它运行 2。知道我做错了什么吗?

最佳答案

您需要使用open('test.csv', 'rU')打开

通用换行符

相关信息来自docs here :

一种解释文本流的方式,其中以下所有内容都被识别为一行结束:Unix 行尾约定“\n”、Windows 约定“\r\n”和旧的 Macintosh 约定 '\r'。请参阅 PEP 278 和 PEP 3116,以及 str.splitlines() 的其他用途

here

除了标准的 fopen() 值之外,模式可能是“U”或“rU”。 Python 通常内置通用换行符支持;提供“U”将文件作为文本文件打开,但行可能会被以下任何一种终止:Unix 行尾约定“\n”、Macintosh 约定“\r”或 Windows 约定“\r\n'。所有这些外部表示都被 Python 程序视为“\n”。如果 Python 构建时不支持通用换行符,则带有“U”的模式与普通文本模式相同。请注意,以这种方式打开的文件对象还有一个名为换行符的属性,其值为 None(如果还没有看到换行符)、'\n'、'\r'、'\r\n' 或包含所有内容的元组看到的换行符类型。

关于python - python 2 中的 csv 阅读器出现问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25335142/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com