Python:对由字母和数字组成的字符串进行排序

2024-09-30 06:28:48 发布

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

我有一个列表,它的元素由字母和数字组成,如下所示:

['H1', 'H100', 'H10', 'H3', 'H2', 'H6', 'H11', 'H50', 'H5', 'H99', 'H8'] 

我想对它进行排序,所以我使用了sort函数,但我得到的结果是:

^{pr2}$

但是,我希望输出为:

['H1', 'H2', 'H3', 'H5', 'H6', 'H8', 'H10', 'H11', 'H50', 'H99', 'H100']

有人知道怎么做吗?谢谢你


Tags: 元素列表字母数字h2h1h3h5
1条回答
网友
1楼 · 发布于 2024-09-30 06:28:48
l = ['H1', 'H100', 'H10', 'H3', 'H2', 'H6', 'H11', 'H50', 'H5', 'H99', 'H8']
print sorted(l, key=lambda x: int("".join([i for i in x if i.isdigit()])))

输出:

^{pr2}$

相关问题 更多 >

    热门问题