2024-04-29 09:18:40 发布
网友
我的地址是
line = 12345 North Drive,,"Palm Retreat, CO",CO,92261
当我分手的时候
line.split(",") ['12345 North Drive', '', '"Palm Retreat', ' CO"', 'CO', '92261']
我只想
'12345 North Drive', '', '"Palm Retreat CO"', 'CO', '92261']
我错过了什么?你知道吗
您应该使用csv模块来处理CSV数据。你知道吗
csv
split()按预期工作;它不关心引号。您可能希望结合StringIO查看csv模块:将字符串放入StringIO对象(使其看起来像文件),然后将其传递给csv.reader。像这样:
split()
StringIO
csv.reader
import csv from cStringIO import StringIO s = "12345 North Drive,,\"Palm Retreat, CO\",CO,92261" s = StringIO(s) reader = csv.reader(s, delimiter=",") for row in reader: print row
更新:实际上,由于csv.reader与任何产生行(而不仅仅是文件)的iterable一起工作,您只需将行列表传递给csv.reader,而无需经过StringIO位。你知道吗
您应该使用
csv
模块来处理CSV数据。你知道吗split()
按预期工作;它不关心引号。您可能希望结合StringIO
查看csv
模块:将字符串放入StringIO
对象(使其看起来像文件),然后将其传递给csv.reader
。像这样:更新:实际上,由于
csv.reader
与任何产生行(而不仅仅是文件)的iterable一起工作,您只需将行列表传递给csv.reader
,而无需经过StringIO
位。你知道吗相关问题 更多 >
编程相关推荐