【发布时间】:2020-09-19 07:00:02
【问题描述】:
我目前正在处理 csv 文件中的 100,000 多行,其结构如下:
//f1, f2, f3, f4, f5, f6, f7, f8, f9, f10, f11
1,false,false,0,"0","0","0","<color=asdf>d1, d2, d3<br>d4"d5", d6.</color>, 0, 1, false"
2,true,false,0,"0","0","0","<color=qwer>d1, "d2, d3"<br> d3<br>d4"d5" d6.</color>, 0, 1, false"
...
最上面一行是文件的结构。
我一直在尝试循环遍历每一行代码,为每个值(f1,f2...)分配相应的值,并使用生成器修改文本,但我面临拆分的问题代码正确。
如果我只是使用line.split(',') 拆分行,我将拥有:
['1', 'false', 'false', '0', '"0"', '"0"', '"0"', '"<color=asdf>d1', 'd2', 'd3<br>d4"d5"', 'd6.</color>, 0, 1, false"',列表长度为 14
当我想要的时候:
['1', 'false', 'false', '0', '"0"', '"0"', '"0"', '"<color=asdf>d1, d2, d3<br>d4"d5", d6.</color>, 0, 1, false"',列表长度为11,使得列表长度对应描述行f1, f2... f11
在我看来,引号 ("") 中的逗号通过拆分所有内容导致 .split(',') 方法出现此问题。
我一直在尝试找到一种可以将“正确”项目合并在一起的方法,但无济于事。谁能帮我解决这个问题?
【问题讨论】: