在Python字典中按值排序(降序),然后按键(升序)

普杜布瓦

我有以下词典:

mydict1 = {1: 11, 2: 4, 5: 1, 6: 1}
mydict2 = {1: 1, 5: 1}

对于它们中的每个,我想首先按值(降序)排序,然后按键(升序)排序,产生以下输出:

out_dict1 = [((1, 11), (2, 4), (5, 1), (6, 1)]
out_dict2 = [(1, 1), (5, 1)]

怎么做呢?

我使用了此方法,但无法在上述两种情况下始终获得一致的结果:

sorted(mydict.items(), key=lambda x: (x[1],x[0]))
四人

由于您想按降序对值进行排序,因此只需在传递给key参数的函数中取反值,就像这样

sorted(mydict.items(), key=lambda x: (-x[1], x[0]))

现在,这些值将按降序排序,如果两个值相等,则将考虑这些键,并且它们将按升序排序。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

按值长度降序然后按键升序对python dict进行排序

按值然后按键对字典排序

python按值对字典项进行排序,然后按键

按值升序和按键降序对字典排序

按值对字典键排序,然后按键排序

按键排序字典,然后按值排序(列表或元组?)

在Python中按字典的值按降序对其排序,其键按升序对字典进行排序

我想按数字降序然后按字母顺序升序对字典进行排序

按值然后按键对字典进行排序

按值然后按键对字典进行排序

按值然后按键对字典进行排序

按值对哈希进行降序排序,然后按升序键入ruby

Perl 按值降序排序哈希,然后按升序键

Python排序字典:键[升序],然后值[降序]

Python按降序排序字典,然后按字母顺序排序

在集合中按升序对所有偶数进行排序,然后按降序对所有奇数进行排序

首先按值对字典排序,然后按 python 3 中的键排序

如何先按字母顺序对字典排序,然后按值升序排列?

如何按键的第一个字母然后按字典中的值排序

使 Vuetify v-data-table 列首先按降序排序,然后按升序排序?

如何先按值然后按键对字典排序

按值然后按键对 Map<Int, Int> 进行排序

如何按值按降序对哈希图进行排序,如果值相同,则按键升序排序

按升序键和降序值对计算单词出现次数的 Python 字典进行排序

在python中对字典值进行排序-按字母顺序降序

字典:按多个键+降序/升序排序

Python按值降序对嵌套字典排序

首先按 null 排序,然后按降序排序

按其值对 RecyclerView 升序/降序排序