gpt4 book ai didi

python csv阅读器不处理引号

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

我有一个文件,我希望使用 CSV 阅读器解析它,它有 12 行,但有些列包含引号,使事情变得更复杂的还有逗号、单引号和换行符,问题是 csv 阅读器不正确处理引号,引号中的引号被视为一个单独的实体,这里是我正在处理的一小部分示例。

ptr = open("myfile")
text = ptr.read()
ptr.close()

for l in csv.reader(text, quotechar='"', delimiter=',',quoting=csv.QUOTE_ALL, skipinitialspace=True):
print l

文件包含:

"0","11/21/2013","NEWYORK","USA
Atlantic ","the person replied \"this quote\" to which i was shocked,
this came as an utter surprise"

"1","10/18/2013","London","UK","please note the message \"next quote\"
is invalid"

"2","08/11/2014","Paris","France",
"the region is in a very important geo strategic importance"

最佳答案

您必须在阅读器中设置 escapechar:

csv.reader(..., escapechar='\\')

默认情况下是None(不知道为什么)。

第二件事是你错误地初始化了阅读器。您不会将字符串传递给阅读器,而是流:

with open("myfile") as fo:
reader = csv.reader(
fo,
quotechar='"',
delimiter=',',
quoting=csv.QUOTE_ALL,
skipinitialspace=True,
escapechar='\\'
)

for row in reader:
print row

关于python csv阅读器不处理引号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29254077/

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