gpt4 book ai didi

python - 仅对列表中的列表的字典值进行排序

转载 作者:行者123 更新时间:2023-12-01 03:54:31 25 4
gpt4 key购买 nike

我有这种类型的字典;

dict2 = {'value1': [ 2, ['get1', 3], ['post3', 4] ], 'value2' : [1, ['get1', 2], ['post2', 5] ], 'value3' : [7, ['get17', 6], ['post2', 2], ['post3', 3] ] }

我知道如何根据列表中的第一个值 (7, 2, 1) 对其进行排序。但是,一旦我按第一个值对象对其进行排序,我只想根据每个列表中的第二个值对列表进行排序。

例如这样;

'value3' : [7, ['get17', 6], ['post3', 3], ['post2', 2] ],
'value1': [ 2, ['post3', 4], ['get1', 3] ],
'value2' : [1, ['post2', 5], ['get1', 2] ]

我一直在研究像 itemgetter 这样的东西,但无法弄清楚。这可以用Python实现吗?

编辑:

这就是我对第一个值对象进行排序以进行打印的方式;

for key, value in sorted(dict2.iteritems(), key=lambda (k,v): (v,k), reverse=True):
print key, value

放入变量;

sort1 = sorted(dict2.items(), key=operator.itemgetter(1, 1), reverse=True)

最佳答案

您应该考虑将项目作为列表或元组获取,并使用函数或 lambda 表达式对它们进行排序,如下所示:

items = dict2.items()
items.sort(key=lambda x:x[1][0])

关于python - 仅对列表中的列表的字典值进行排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37729843/

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