我正在尝试使用Python来拆分字符串,如下所示:
10004, 10005, 0,'1 ',2,2,1, 0.00000E+0, 0.00000E+0, 2, 'ALCAZAR,NMRD ',1, 129,1.0000
Run Code Online (Sandbox Code Playgroud)
我想说"ALCAZAR,NMRD "一句话.显然,如果我","用作分离器str.split(),这个单词将被分成两个字符串.我正在考虑"," 用空格替换这个词,然后用它","作为分割器来分割整行.但是str.replace()没有给我指定开始或结束的位置.非常感谢您的反馈.
对于示例字符串,您可以使用csv模块:
import csv
st="""\
10004, 10005, 0,'1 ',2,2,1, 0.00000E+0, 0.00000E+0, 2, 'ALCAZAR,NMRD ',1, 129,1.0000"""
kwargs={'skipinitialspace':True, 'quotechar':"'"}
for e in csv.reader(st.splitlines(), **kwargs):
print e
Run Code Online (Sandbox Code Playgroud)
打印:
['10004', '10005', '0', '1 ', '2', '2', '1', '0.00000E+0', '0.00000E+0', '2',
'ALCAZAR,NMRD ', '1', '129', '1.0000']
Run Code Online (Sandbox Code Playgroud)
如果你想摆脱每个元素上的尾随空格(例如'ALCAZAR,NMRD '- > 'ALCAZAR,NMRD'):
for e in csv.reader(st.splitlines(), **kwargs):
e=[x.strip() for x in e]
# ... process the split list of elements from a line of csv...
Run Code Online (Sandbox Code Playgroud)