gpt4 book ai didi

python - 如何在 python 中按数字然后按字母对列表进行排序?

转载 作者:行者123 更新时间:2023-11-28 22:43:11 26 4
gpt4 key购买 nike

有没有办法同时按数字和字母对列表进行排序?

alist = [ "1", "A12", "12", "B12", "A17", "2", "25", "29", "122", "A1" , "3", "17"]

我想返回:

['1', 'A1', '2', '3', '12', 'A12', 'B12', '17', 'A17', '25', '29', '122']

最佳答案

有点奇怪,但是没关系......

import re

def sorter(s):
match = re.search('([a-zA-Z]*)(\d+)', s)
return int(match.group(2)), match.group(1)

sorted(alist, key=sorter)
Out[13]: ['1', 'A1', '2', '3', '12', 'A12', 'B12', '17', 'A17', '25', '29', '122']

关于python - 如何在 python 中按数字然后按字母对列表进行排序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31040572/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com