在这种情况下,sorted()的替代方法是什么?还是可以管理?

用户3059474

考虑以下字典...

d = {'ab': 3, 'aa': 3, 'b': 4, 'c': 2, 'a': 1}

>>>sorted(d, key=d.get, reverse=True)[:2]
['b', 'ab']    

使用sorted,目标是产生与两个最高值关联的键。这是我遇到的麻烦:绑定两个值时,应选择按字母顺序第一个出现的键。因此,在这种情况下,我实际上要返回的是['b','aa'],因为'aa'和'ab'的值均为3。如果有帮助,字典的值也将始终为正。

帝斯曼

怎么样:

>>> d = {'ab': 3, 'aa': 3, 'b': 4, 'c': 2, 'a': 1}
>>> sorted(d, key=lambda x: (-d[x], x))
['b', 'aa', 'ab', 'c', 'a']
>>> sorted(d, key=lambda x: (-d[x], x))[:2]
['b', 'aa']

要么

>>> sorted(d, key=lambda x: (-d[x], x.lower()))[:2]
['b', 'aa']

取决于您对案件的关心程度。

您还可以利用排序稳定的事实,并分两步进行:

>>> sorted(sorted(d), key=d.get, reverse=True)
['b', 'aa', 'ab', 'c', 'a']

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

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

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

jQuery:在这种情况下,.on()的正确用法是什么?

来自分类Dev

在这种情况下,`typedef`是什么意思

来自分类Dev

在这种情况下,svn更新的流程是什么?

来自分类Dev

jQuery:在这种情况下,.on()的正确用法是什么?

来自分类Dev

在这种情况下setViewControllers的目的是什么

来自分类Dev

> =在这种情况下是什么意思

来自分类Dev

在这种情况下 res 是什么意思?

来自分类Dev

在这种情况下,处理AngularJS中事件的最佳方法是什么?

来自分类Dev

在这种情况下,避免混乱循环的最佳方法是什么?

来自分类Dev

mysql:在这种情况下索引多列的最佳方法是什么

来自分类Dev

在这种情况下,将undef传递给DBI的do方法的目的是什么?

来自分类Dev

在这种情况下,将分支与GIT一起使用的最佳方法是什么

来自分类Dev

Angular:在这种特殊情况下使用ng-change的正确方法是什么?

来自分类Dev

在这种情况下,最好的 Pandas 应用/循环方法是什么?

来自分类Dev

在这种情况下触发第一项选择的优雅方法是什么?

来自分类Dev

在这种情况下可以重写ToString()方法吗

来自分类Dev

在这种情况下可以实现hashCode()方法吗?

来自分类Dev

在这种情况下可以重写ToString()方法吗

来自分类Dev

AngularJS在这种情况下,有什么短方法可以调用父级作用域?

来自分类Dev

在这种情况下,是否可以使用Google Apps脚本中的类用户替代方法?

来自分类Dev

警告C4309-这是什么意思,在这种情况下可以忽略吗?

来自分类Dev

令牌是什么!在这种情况下(与绑定一起)是什么意思?

来自分类Dev

从Django中的QuerySet中排除对象实例的最佳方法是什么(在这种情况下,filter()不是选项)?

来自分类Dev

在这种情况下,非泛型方法不能与类型参数一起使用的含义是什么?

来自分类Dev

在Django中从QuerySet中排除对象实例的最佳方法是什么(在这种情况下,filter()不是选项)?

来自分类Dev

在这种情况下是INNER JOIN还是嵌套SELECT?

来自分类Dev

在这种情况下,wait(null) 做什么?程序的输出是什么?

来自分类Dev

在春季,服务层的作用是什么?在这种情况下如何拆分逻辑?

来自分类Dev

微服务架构,在这种情况下是什么服务

Related 相关文章

  1. 1

    jQuery:在这种情况下,.on()的正确用法是什么?

  2. 2

    在这种情况下,`typedef`是什么意思

  3. 3

    在这种情况下,svn更新的流程是什么?

  4. 4

    jQuery:在这种情况下,.on()的正确用法是什么?

  5. 5

    在这种情况下setViewControllers的目的是什么

  6. 6

    > =在这种情况下是什么意思

  7. 7

    在这种情况下 res 是什么意思?

  8. 8

    在这种情况下,处理AngularJS中事件的最佳方法是什么?

  9. 9

    在这种情况下,避免混乱循环的最佳方法是什么?

  10. 10

    mysql:在这种情况下索引多列的最佳方法是什么

  11. 11

    在这种情况下,将undef传递给DBI的do方法的目的是什么?

  12. 12

    在这种情况下,将分支与GIT一起使用的最佳方法是什么

  13. 13

    Angular:在这种特殊情况下使用ng-change的正确方法是什么?

  14. 14

    在这种情况下,最好的 Pandas 应用/循环方法是什么?

  15. 15

    在这种情况下触发第一项选择的优雅方法是什么?

  16. 16

    在这种情况下可以重写ToString()方法吗

  17. 17

    在这种情况下可以实现hashCode()方法吗?

  18. 18

    在这种情况下可以重写ToString()方法吗

  19. 19

    AngularJS在这种情况下,有什么短方法可以调用父级作用域?

  20. 20

    在这种情况下,是否可以使用Google Apps脚本中的类用户替代方法?

  21. 21

    警告C4309-这是什么意思,在这种情况下可以忽略吗?

  22. 22

    令牌是什么!在这种情况下(与绑定一起)是什么意思?

  23. 23

    从Django中的QuerySet中排除对象实例的最佳方法是什么(在这种情况下,filter()不是选项)?

  24. 24

    在这种情况下,非泛型方法不能与类型参数一起使用的含义是什么?

  25. 25

    在Django中从QuerySet中排除对象实例的最佳方法是什么(在这种情况下,filter()不是选项)?

  26. 26

    在这种情况下是INNER JOIN还是嵌套SELECT?

  27. 27

    在这种情况下,wait(null) 做什么?程序的输出是什么?

  28. 28

    在春季,服务层的作用是什么?在这种情况下如何拆分逻辑?

  29. 29

    微服务架构,在这种情况下是什么服务

热门标签

归档