如何对特定字符串索引中的字符串数组进行排序

2024-09-26 04:45:09 发布

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

所以。。实际上,我有一个列表,上面有多个字符串。在这里,我想在特定的字符串索引中对其进行排序:

lists = ['AELIA4560005253120', 'KIFLA5000005760000']

苏。。在列表中,有名称(其中包含大写字母)、代码(名称后3位数字)和密码(前一个代码后10位数字)。。我的问题是,我可以按特定的字符串索引对列表进行排序吗?我想按代码对列表进行排序(名称后有3位数字)

# expecting lists after sort
lists_sort = ['KIFLA5000005760000','AELIA4560005253120']

所以我的预期结果是,KIFLA排在第一,AELIA排在第二,因为KIFLA的代码是500,AELIA的代码是456

有人能帮我吗?非常感谢。😁


Tags: 字符串代码名称密码列表排序数字大写字母
2条回答

假设名称的长度可变,则可以使用:

import re

lists = ['AELIA4560005253120', 'KIFLA5000005760000']

lists_sort = sorted(lists, key = lambda x: int(re.search(r'\d{3}', x).group(0)), reverse = True)
print(lists_sort)

试试这个:

lists = ['AELIA4560005253120', 'KIFLA5000005760000']

res = sorted(lists, key=lambda x: int(x[5:8]) , reverse = True)
#['KIFLA5000005760000', 'AELIA4560005253120']

相关问题 更多 >