您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

我可以在Python中按文本的数值对其排序吗?

我可以在Python中按文本的数值对其排序吗?

您可以按所需的方式对键进行排序,方法是将其拆分为“。”。然后将每个组件转换为整数,如下所示:

sorted(mydict.keys(), key=lambda a:map(int,a.split('.')))

返回以下内容

['0',
 '1',
 '2.0',
 '2.1',
 '3',
 '4.0.0',
 '4.0.1',
 '5',
 '10',
 '11.0',
 '11.1',
 '12.0',
 '12.1.0',
 '12.1.1']

您可以遍历该键列表,并根据需要将值从字典中拉出。

您还可以非常相似地对mydict.items()的结果进行排序:

sorted(mydict.items(), key=lambda a:map(int,a[0].split('.')))

这为您提供了(键,值)对的排序列表,如下所示:

[('0', 10),
 ('1', 23),
 ('2.0', 321),
 ('2.1', 3231),
 ('3', 3),
 # ...
 ('12.1.1', 2)]
python 2022/1/1 18:38:25 有422人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶