gpt4 book ai didi

python - 值按字符串排序,但我想在 Python 中将它们按数字排序

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

我在 python 中读取了一个日志,其中包含每行的名称、内存、ncalls并将其保存为元组列表,其中每个元素都是一个元组(名称,内存,ncalls)有时需要根据名称对列表进行排序,有时需要根据内存或调用次数对列表进行排序。如果我只是使用代码会出现问题

 mylist=sorted(mylist, key=itemgetter(2)) 

列表使用所需的参数进行排序,但Python将参数视为字符串,我得到了这个结果

item3, 45, 1
item1, 4, 12
item4, 65, 3
item2, 65, 5

期望的结果是

item3, 45, 1
item4, 65, 3
item2, 65, 5
item1, 4, 12

因为 3 和 5 小于 12

如何在不改变保存列表的方式的情况下解决这个问题?

最佳答案

解决方案是将 key 定义为将第三项转换为 int 的 lambda:

sorted_data = sorted(list, key=lambda t: int(t[2])) 

关于python - 值按字符串排序,但我想在 Python 中将它们按数字排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36399303/

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