如何拆分由“;”分隔的文件行中的单词

How to split words in line of a file separated by ";"

如何拆分由;分隔的行中的单词:

10103;Baldwin, C;SFEN
10115;Wyatt, X;SFEN
10172;Forbes, I;SFEN
10175;Erickson, D;SFEN
10183;Chapman, O;SFEN
11399;Cordova, I;SYEN
11461;Wright, U;SYEN
11658;Kelly, P;SYEN
11714;Morton, A;SYEN
11788;Fuller, E;SYEN

这是您要找的吗?

line = "10103;Baldwin, C;SFEN 10115;Wyatt, X;SFEN 10172;Forbes, I;SFEN 10175;Erickson, D;SFEN 10183;Chapman, O;SFEN 11399;Cordova, I;SYEN 11461;Wright, U;SYEN 11658;Kelly, P;SYEN 11714;Morton, A;SYEN 11788;Fuller, E;SYEN"
line.split(";")

输出

['10103',
 'Baldwin, C',
 'SFEN 10115',
 'Wyatt, X',
 'SFEN 10172',
 'Forbes, I',
 'SFEN 10175',
 'Erickson, D',
 'SFEN 10183',
 'Chapman, O',
 'SFEN 11399',
 'Cordova, I',
 'SYEN 11461',
 'Wright, U',
 'SYEN 11658',
 'Kelly, P',
 'SYEN 11714',
 'Morton, A',
 'SYEN 11788',
 'Fuller, E',
 'SYEN']

另一种选择:

"10103;Baldwin, C;SFEN".split(";")

但是,我认为您想要分隔所有内容(包括逗号),所以我会替换“;”首先是逗号,然后用逗号分隔。

我建议为此使用 csv,但如果您的输入实际上是一个字符串,那么您将需要 io.StringIO 或仅按换行符分隔:

import csv
from io import StringIO

s = """10103;Baldwin, C;SFEN
10115;Wyatt, X;SFEN
10172;Forbes, I;SFEN
10175;Erickson, D;SFEN
10183;Chapman, O;SFEN
11399;Cordova, I;SYEN
11461;Wright, U;SYEN
11658;Kelly, P;SYEN
11714;Morton, A;SYEN
11788;Fuller, E;SYEN"""

reader = csv.reader(s.split('\n'), delimiter=';')
#or
reader = csv.reader(StringIO(s), delimiter=';')
for line in reader:
    print(line)

输出:

['10103', 'Baldwin, C', 'SFEN']
['10115', 'Wyatt, X', 'SFEN']
['10172', 'Forbes, I', 'SFEN']
['10175', 'Erickson, D', 'SFEN']
['10183', 'Chapman, O', 'SFEN']
['11399', 'Cordova, I', 'SYEN']
['11461', 'Wright, U', 'SYEN']
['11658', 'Kelly, P', 'SYEN']
['11714', 'Morton, A', 'SYEN']
['11788', 'Fuller, E', 'SYEN']