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

Python:如何分割逗号分隔字符串,忽略引号内的逗号

解决带引号字段的字符串分割问题

给定包含带引号字段(含逗号内容、空字符串)的字符串,需要按逗号分割但不拆分引号内的内容,可以直接利用Python内置的csv模块处理,这是最简洁可靠的方案:

代码实现

import csv
from io import StringIO

my_string = '2, "some text", "some more text with comma, foo bar", 42, "", 3, 4, "and some more text, hello"'
# 替换HTML转义的双引号为实际双引号
processed_str = my_string.replace('"', '"')
# 用csv.reader解析,自动处理引号内的逗号
reader = csv.reader(StringIO(processed_str), skipinitialspace=True)
# 获取解析后的列表
result = next(reader)
print(result)

代码说明

  • replace('"', '"'):原字符串中的"是HTML转义的双引号,先替换为标准双引号,确保csv模块能正确识别引号包裹的字段。
  • csv.reader:默认以逗号为分隔符,会自动忽略双引号内部的逗号,同时将""解析为空字符串,完全匹配需求。
  • skipinitialspace=True:自动去除每个字段开头的空格(比如原字符串中逗号后的空格),让结果和预期完全一致。

运行结果

输出:

['2', 'some text', 'some more text with comma, foo bar', '42', '', '3', '4', 'and some more text, hello']

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.17 08:01:30