使用Python拆分字符串

Edd*_* H. -2 python

我正在尝试使用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()没有给我指定开始或结束的位置.非常感谢您的反馈.

daw*_*awg 5

对于示例字符串,您可以使用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)