You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python CSV reader读取TSV时引号后制表符解析错误如何解决?

问题原因

你遇到的字段合并问题是Python标准库csv模块的默认行为导致的:默认会将双引号识别为字段引用符,当遇到未闭合的双引号时,模块会认为后续的制表符都属于当前字段的内部内容,直到匹配到下一个双引号才会结束当前字段,因此出现多字段被合并的情况。

解决方案

调整csv.reader的引号相关配置,禁用引号的特殊解析逻辑即可,修改后的代码如下:

import csv

# 建议使用with上下文管理器自动处理文件关闭,按需调整文件编码参数
with open('sample.csv', 'r', encoding='utf-8') as f:
    # 核心配置:禁用引号识别,仅按制表符分割字段
    reader = csv.reader(
        f,
        delimiter='\t',
        quoting=csv.QUOTE_NONE,  # 不识别任何字段引用符
        quotechar=''  # 显式将引用字符设为空,避免默认的双引号解析
    )
    for chunk in reader:
        print(chunk)

参数说明

  • quoting=csv.QUOTE_NONE:通知csv模块不对字段做任何引用包裹的识别处理,所有内容按普通文本解析
  • quotechar='':彻底清空默认的双引号引用字符配置,保证字段内的双引号会被当作普通文本完整保留,不会被特殊处理

该配置会完全按制表符分割字段,同时原样保留字段内的所有引号内容,完全符合你的预期输出要求。

内容的提问来源于stack exchange,提问作者Someone

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.25 15:45:04