我正在尝试读取文件并在ODI中使用Jython帮助填充DB中的值。 为此,我在“'”的基础上逐行阅读这一行。本。
现在我有一行
4JGBB8GB5AA557812,,Miss,Maria,Cruz,,"266 Faller Drive Apt. B",
New Milford,NJ,07646,2015054604,2015054604,20091029,51133,,,
N,LESSEE,"MERCEDES-BENZ USA, LLC",N,N
" MERCEDES-BENZ USA,LLC"这个字段在双引号内,因为它被分成两个字段,而它应该只被认为是一个。有人可以告诉我应该怎样避免这种情况。
fields = valueList.split(',')
我用它来分割,其中,值列表是文件中存在的单独行
答案 0 :(得分:0)
您可以使用可以处理引号的csv
模块:
line = '4JGBB8GB5AA557812,,Miss,Maria,Cruz,,"266 Faller Drive Apt. B",New Milford,NJ,07646,2015054604,2015054604,20091029,51133,,,N,LESSEE,"MERCEDES-BENZ USA, LLC",N,N'
import StringIO
import csv
f = StringIO.StringIO(line)
reader = csv.reader(f, delimiter=',')
for row in reader:
print('\n'.join(row))
结果:
...
266 Faller Drive Apt. B
...
LESSEE
MERCEDES-BENZ USA, LLC
...
我的示例使用StringIO
,因为测试行在代码中是字符串,您只需使用刚打开的文件处理程序作为f
。
您可以在本月的模块中找到更多示例":http://pymotw.com/2/csv/index.html#module-csv