python取mysql数据带逗号和括号_python解析逗号分割的引号中的字符串

本文介绍了如何处理供应商提供的逗号分隔数据,这些数据中包含逗号和双引号包裹的字段。文章讨论了使用replace和split、shlex以及pyparsing和csv库的方法,并提供了错误示例和正确解决方案。最终,通过csv库的解决方案被证明是高效且准确的。
摘要由CSDN通过智能技术生成

需求: 供应商提供了如下数据txt文件,现在想通过python解析这些数据,共10列

"CN","823923424","SET","KG","01/01/2011","优美的小调(钢琴曲)","塑料,制品",,"","个人梳妆旅行用具"

难点:

1. 数据逗号分隔,但是数据中可能也包含逗号,如:"塑料,制品"

2. 数据多是通过双引号包裹,但是有些空值数据没有通过双引号包裹

尝试过的错误方法:

1. 通过replace,split函数

data = '"CN","823923424","SET","KG","01/01/2011","优美的小调(钢琴曲)","塑料,制品",,"","个人梳妆旅行用具"'

line_data = data.replace('"', '').split(',')

print(line_data)

运行结果:

['CN', '823923424', 'SET', 'KG', '01/01/2011', '优美的小调(钢琴曲)', '塑料', '制品', '', '', '个人梳妆旅行用具']

结果数据中的逗号也被解析了,结果多了一列,

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值