从字符串python返回NUM的尾随集

2024-10-01 05:05:35 发布

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

如何从字符串列表中返回尾随的数字集?你知道吗

mylist = ['kys_q1a2','kys_q3a20','kys_q2889b244','sonyps3_q92c288888']

预期结果:

[2, 20, 244, 288888] 

我失败的尝试:

for item in mylist:
    print item[-1]

上下文:

列表中的每个项目代表问题名称,由两部分组成:

  1. 问题名称和编号:“kys\ U q1”
  2. 问题元素名称和编号:“a2”

我试着用不同的方式来展示它们。你知道吗


Tags: 字符串in名称列表for数字item编号
3条回答
>>> [ int(re.findall('(\d+$)', x)[0]) for x in mylist ]
[2, 20, 244, 288888]
>>>

您可以使用正则表达式:

>>> import re
>>> r = re.compile(r'\d+$')
>>> [int(m.group()) for m in (r.search(item) for item in mylist) if m]
[2, 20, 244, 288888]

可以使用正则表达式匹配尾随数字:

>>> mylist = ['kys_q1a2','kys_q3a20','kys_q2889b244','sonyps3_q92c288888']
>>> [int(re.search(r'\d+$', el).group(0)) for el in mylist]
[2, 20, 244, 288888]

相关问题 更多 >