如何根据多个因素拆分行中的项目(python)

2024-06-02 10:48:18 发布

您现在位置:Python中文网/ 问答频道 /正文

我在文件里有一行:

['18G01G03G06G09G11G12G17G19G23G31G32R01']

我需要把它分开,这样它就会产生:

['18', 'G01', 'G03', 'G06', 'G09', 'G11', 'G12', 'G17', 'G19', 'G23', 'G31', 'G32', 'R01']

虽然我错了,但我找不到办法解释这个问题。 有人能帮忙吗?你知道吗

谢谢你


Tags: 文件办法g12g11r01g06g31g09
2条回答

你可以用re.findall

import re
s = ['18G01G03G06G09G11G12G17G19G23G31G32R01']
re.findall(r'[A-Z]?\d+', s[0])

不使用regex就可以按逻辑进行。你知道吗

代码:

lst = ['18G01G03G06G09G11G12G17G19G23G31G32R01']
ind =0
count =0
new_lst=[]
for index, val in enumerate(lst[0]):
    if val.isalpha():
        new_lst.append(lst[0][ind:index])
        ind=index

if ind<len(lst[0]):
    new_lst.append(lst[0][ind:])
print new_lst

输出:

['18', 'G01', 'G03', 'G06', 'G09', 'G11', 'G12', 'G17', 'G19', 'G23', 'G31', 'G32', 'R01']

相关问题 更多 >