【发布时间】:2020-12-22 09:24:14
【问题描述】:
所以我有这段代码,我在其中创建一个带有子字符串的列表: '''
string = "|01|12345|TEXT1|TEXT2|"
x = string.count("|")
if string.count('|') == 3:
subst = string.strip('|').split('|')
print(substr)
else:
substr = string.strip('|').split('|')
print(substr)
'''
结果:
'''
['01', '12345', 'TEXT1', 'TEXT2']
'''
但是,我想打印结果是这样的所有子字符串:
'''
[LAS|01|G12345|TEXT1|TEXT2|<CR>|]
'''
我知道我能做到:
'''
print("[LAS|" + substr[0] + "|G" + substr[1] + "|" + substr[2] + "|" + substr[3] + "|<CR>|]")
'''
但是这是硬编码的,如果我得到的字符串变成了更多的子字符串怎么办?我不想使用分配的 if 语句,如果 ('|') == 4、== 5、== 6 等的计数。
我如何确保我打印的内容包含所有子字符串。并且在每个子字符串之间都有一个管道符号 (|)。
谢谢,
【问题讨论】:
-
查看
string.split("|")制作子字符串。 -
使用
str.strip.split:s.strip("|").split("|")