首页 > 解决方案 > 删除每行中的双引号(csv writer)

问题描述

我正在将 API 结果写入 python 3.7 中的 CSV 文件。问题是它在写入文件时为每一行添加双引号(“”)。

我将格式作为 csv 传递给 API 调用,以便获得 csv 格式的结果,然后将其写入 csv 文件,存储到特定位置。请建议是否有更好的方法来做到这一点。

这是示例代码..

    with open(target_file_path, 'w', encoding='utf8') as csvFile:
        writer = csv.writer(csvFile, quoting=csv.QUOTE_NONE, escapechar='\"')
        for line in rec.split('\r\n'):
            writer.writerow([line])

当我使用它时,在每列值的 处escapechar='\"'添加 ( )。"

这是样本记录..

2264855868",42.38454",-71.01367",07/15/2019 00:00:00",07/14/2019 20:00:00"
2264855868",42.38454",-71.01367",07/15/2019 01:00:00",07/14/2019 21:00:00"

标签: pythonpython-3.7

解决方案


您是否尝试过从中删除反斜杠escapechar='\"'?这不是必需的,因为您对字符串使用单引号。

编辑:文档

如果 quoting 设置为 QUOTE_NONE 和 quotechar 如果 doublequote 为 False,则作者用来转义分隔符的单字符字符串。阅读时,escapechar 会从后面的字符中删除任何特殊含义。

和分界线:

用于分隔字段的单字符字符串。它默认为“,”

因此,在这种情况下,它将,使用您设置的任何内容来转义分隔符 ( )escapechar,

如果您不想逃脱,请尝试将其留空


推荐阅读