gpt4 book ai didi

python - 如何在 Python 中对对象进行排序

转载 作者:行者123 更新时间:2023-11-28 20:30:01 24 4
gpt4 key购买 nike

我很难找到 list.sort 命令的正确语法来从数组中获取正确的最大值。我有以下对象列表:

[((6, (192, 96, 128)), 1), ((49, (128, 32, 64)), 1), ((2, (128, 96, 0)), 1),
((4, (160, 160, 160)), 1), ((41977, (64, 160, 160)), 1), ((1787, (128, 32, 128)), 1),
((8, (128, 96, 160)), 1), ((1, (192, 96, 160)), 1), ((14381, (0, 0, 32)), 1),
((2, (64, 96, 64)), 1), ((9, (192, 128, 160)), 1), ((410, (64, 32, 64)), 1),
((75, (192, 160, 96)), 1), ((6, (96, 0, 32)), 1), ((142163, (0, 160, 128)), 1),
((2468, (224, 192, 64)), 1), ((95, (64, 0, 32)), 1), ((224, (0, 128, 160)), 1),
((57, (96, 32, 32)), 1), ((40, (160, 96, 64)), 1)]

我想对其进行排序,以便我选择最高值:((142163, (0, 160, 128)), 1)

谁能帮我构建一个命令,要么按降序对列表进行排序,要么获取 142163 的 max() 值并返回其关联元素 (0,160,128)?

非常感谢!

最佳答案

在您的情况下,您不需要排序 (O(log(n)*n) complexity) 因为您只需要一个值。最快的方法是使用 max(O(n) 复杂度),因为结构的顺序遵循自然顺序

>>> max(x)
((142163, (0, 160, 128)), 1)

max 还接受一个 key 参数用于更复杂的排序情况。

关于python - 如何在 Python 中对对象进行排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58904608/

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