gpt4 book ai didi

python - 如何解析带引号字符串的 csv - 高级案例

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

我正在尝试使 csv 模块解析包含带引号的字符串和带引号的分隔符的行。不幸的是,我无法使用任何方言/格式参数获得预期的结果。有没有办法解析这个:

'"AAA", BBB, "CCC, CCC"'

得到这个:

['"AAA"', 'BBB', '"CCC, CCC"']    # 3 elements, one quoted separator

?

两个基本要求:

  1. 必须保留引文
  2. 必须将带引号而不是转义的分隔符复制为常规字符

这可能吗?

最佳答案

有两个问题需要克服:

第二部分在文档中描述为:

Dialect.doublequote

Controls how instances of quotechar appearing inside a field should themselves be quoted. When True, the character is doubled. When False, the escapechar is used as a prefix to the quotechar. It defaults to True.

独立示例,没有文件:

import csv
data = ['"AAA", BBB, "CCC, CCC"'.replace('"','"""')]

cr = csv.reader(data,skipinitialspace=True)
row = next(cr)
print(row)

结果:

['"AAA"', 'BBB', '"CCC, CCC"']

以文件作为输入:

import csv
with open("input.csv") as f:
cr = csv.reader((l.replace('"','"""' for l in f),skipinitialspace=True)
for row in cr:
print(row)

关于python - 如何解析带引号字符串的 csv - 高级案例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49117525/

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