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

马特·怀特黑德

我有以下字典:

fruits = {
    "apple": 5,
    "Apple": 5,
    "orange": 5,
    "strawberry": 3,
    "blueberry": 1
}

我需要打印出具有最高值的两个键的列表。必须使用大写字母优先于小写字母的字母来按字母顺序AZ来打破关系。按次数运行以下排序,但不会中断联系:

popular_fruits = sorted(fruits, key=fruits.get, reverse=True)
print(popular_fruits[0:2])

我该怎么做?

阳台

您可以使用如下形式:

popular_fruits = sorted(fruits, key=lambda x: (-fruits[x], x))
print(popular_fruits[0:2])

编辑:

之前的否定fruits[x]用于反转递减的数字顺序,在平局的情况下,该顺序由元组的第二个参数确定(按字母顺序)。

一个人不能简单地使用sorted(fruits, key=lambda x: (fruits[x], x), reverse=True)它,因为它会颠倒两个元组元素的顺序,但是我们只需要对第一个元素进行排序。

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

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

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

PHP高级按数字先排序,然后按字母顺序排序

Linq按属性排序,然后按原始顺序排序

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

按数据属性(按字母顺序,然后按数字顺序)对列表项进行排序

MongoDB:按现有字段排序,然后按字母顺序排序

Postgres / ActiveRecord按字母排序,然后按数字排序?

按长度排序数组,然后按字母顺序排序

按字段对对象数组进行排序,然后按字母顺序排序

根据数据降序对熊猫系列进行排序,然后按字母顺序优雅地对索引进行排序

按字母顺序排序下拉列表,然后按特定前缀排序

按字母顺序对字符数组进行排序,然后按长度排序

按字母顺序,按未由APPLE开头的字母排序,然后按以APPLE开头的字母排序

C-按计数排序,然后按字母顺序

熊猫value_counts:按值排序,然后按字母顺序排序?

按值然后按键对字典排序

MySQL-按多个单词排序,然后按字母顺序排序?

MySQL-如何按名称排序,然后按字母数字顺序在表上排序?

如何使用sort_by按字母顺序然后按数字顺序然后按特殊字符排序

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

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

按索引对大熊猫数据框进行排序,然后按字母顺序排序

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

按值对Hashmap排序,然后按字母顺序排序

按枚举排序列表,然后按字母顺序排序

按子数组类型值排序,然后按字母顺序排序

SQL如何用数字按字母顺序排序文本,然后按数字排序

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

如何按字母顺序对 csv 数据进行排序,然后按列按数字排序?

给定哈希数组,按字母顺序排序,然后按数字排序