有时我需要解析CSV的字符串,但是我遇到麻烦的引用昏迷.正如此代码所示.我正在使用python 2.4
import csv
for row in csv.reader(['one",f",two,three']):
print row
Run Code Online (Sandbox Code Playgroud)
我得到4个元素['one"','f"','two','three']但是我想得到这个['one",f"','two','three']或3个元素即使我尝试使用quotechar ='"'选项(这是根据文档默认值)仍然相同,我怎么能忽略引号中的昏迷?
编辑:谢谢大家的答案显然我把我的输入误认为是CSV,最后我解析了strig的键值(NAME,DESCR ......)
这是输入
名称:"2801 chassis",DESCR:"2801 chassis,Hw Serial#:xxxxxxx,Hw Revision:6.0",PID:CISCO2801,VID:V03,SN:xxxxxxxxx
实际上你得到的结果是正确的 - 你的CSV语法是错误的.
如果要引用CSV值中的逗号或其他字符,则必须使用围绕整个值的引号,而不是它的一部分.如果值不是以引号字符开头,则Python的CSV实现不会假定引用该值.
所以,而不是使用
one",f",two,three
Run Code Online (Sandbox Code Playgroud)
你应该使用
"one,f",two,three
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
2345 次 |
最近记录: |