如何将序列号列表拆分为多个前缀匹配的列表?

2024-10-06 14:28:17 发布

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

我在列表中有三个带图案的序列号,如下例所示:

sn = [bike-001, bike-002, car/001, bus/for/001, car/002, bus/for/002]

我想将它们分成多个列表,如下例所示:

sn1 = [bike-001, bike-002]

sn2 = [car/001, car/002]

sn3 = [bus/for/001, bus/for/002]

每次只更改数字。如何做到这一点


Tags: 列表for数字car序列号图案bussn
1条回答
网友
1楼 · 发布于 2024-10-06 14:28:17

字符串有.startswith(<sub_str>)方法,它将在这里帮助您。您可以通过简单的检查使用列表理解来获得所需的输出:

sn = ['bike-001', 'bike-002', 'car/001', 'bus/for/001', 'car/002', 'bus/for/002']

sn_1 = [i for i in sn if i.startswith('bike')]
sn_2 = [i for i in sn if i.startswith('car')]
sn_3 = [i for i in sn if i.startswith('bus')]

结果如下所示:

['bike-001', 'bike-002']
['car/001', 'car/002']
['bus/for/001', 'bus/for/002']

相关问题 更多 >