小能豆

根据元组的指定元素对带有元组键的字典进行排序

py

我有一个字典列表,字典的键是元组,例如:(0,5)

我想按 tuple[1] 的值对列表进行排序。

我尝试使用方法列表排序的 key 参数,但我不知道在 lambda 中放什么,我尝试这样做: key= lambda k[[1]]

示例输入:[{(5,9): "item"}, {(0,4): "item"}]

预期的:[{(0,4): "item"}, {(5,9): "item"}]

有人可以向我解释它是如何工作的吗?


阅读 24

收藏
2024-12-06

共1个答案

小能豆

如果你有这样的问题,解决方案如下:

a = [{(0,7): 1},
     {(1,5): 2},
     {(4,6): 3}]

sorted(a, key=lambda x: list(x.keys())[0][1])
#[{(1, 5): 2}, {(4, 6): 3}, {(0, 7): 1}]
2024-12-06