1. dic = {"abc":18,"adc":19,"abe":20}
  2. # 默认对键排序,从小到大,返回排序后键组成的列表
  3. zidian = sorted(dic)#['abc', 'abe', 'adc']
  4. print(zidian)
  5. # 对键进行反向(从大到小)排序
  6. zidian = sorted(dic,reverse=True)#['adc', 'abe', 'abc']
  7. print(zidian)
  8. # 拿到所有的key,然后再对key排序
  9. zidian = sorted(dic.keys(),reverse=True)#['adc', 'abe', 'abc']
  10. print(zidian)
  11. # 对值排序,从小到大
  12. print(dic)
  13. zidian = sorted(dic.values())#[18, 19, 20]
  14. print(zidian)
  15. # 对值排序,从大到小
  16. zidian = sorted(dic.values(),reverse=True)#[20, 19, 18]
  17. print(zidian)
  18. #可以用dict1.items(),得到包含键,值的元组,
  19. # 由于迭代对象是元组,返回值自然是元组组成的列表,x指元组,x[1]是值,x[0]是键
  20.  
  21. # 键由小到大排序
  22. zidian = sorted(dic.items(),key=lambda x:x[0])
  23. print(zidian)
  24.  
  25. # 键由大到小排序
  26. zidian = sorted(dic.items(),key=lambda x:x[0],reverse=True)
  27. print(zidian)
  28.  
  29. # 值由小到大排序
  30. zidian = sorted(dic.items(),key=lambda x:x[1])
  31. print(zidian)
  32. # 值由大到小排序
  33. zidian = sorted(dic.items(),key=lambda x:x[1],reverse=True)
  34. print(zidian)
  35.  
  36. #itemgetter(0),获取key
  37. # itemgetter(1),获取value
  38. from operator import itemgetter
  39. d = {"a":8,"b":4,"c":12,"a":10,"b":1,"e":10}
  40. # 键由大到小
  41. print(sorted(d.items(),key=itemgetter(0),reverse=True))#[('e', 10), ('c', 12), ('b', 1), ('a', 10)]
  42. # 值由大到小
  43. print(sorted(d.items(),key=itemgetter(1),reverse=True))#[('c', 12), ('a', 10), ('e', 10), ('b', 1)]
  1. prices = {
  2. 'ACME': 45.23,
  3. 'AAPL': 612.78,
  4. 'IBM': 205.55,
  5. 'HPQ': 37.20,
  6. 'FB': 10.75
  7. }
  8. # 在一个字典上执行普通的数学运算,你会发现它们仅仅作用于键,而不是值
  9. min(prices) # Returns 'AAPL'
  10. max(prices) # Returns 'IBM'
  11.  
  12. min(prices.values()) # Returns 10.75
  13. max(prices.values()) # Returns 612.78
  14.  
  15. min(prices, key=lambda k: prices[k]) # Returns 'FB'
  16. max(prices, key=lambda k: prices[k]) # Returns 'AAPL'
  17.  
  18. min_price = min(zip(prices.values(), prices.keys()))
  19. # min_price is (10.75, 'FB')
  20. print("min_price",min_price)
  21. max_price = max(zip(prices.values(), prices.keys()))
  22. # max_price is (612.78, 'AAPL')
  23. print("max_price",max_price)
  24.  
  25. #值由大到小排序
  26. prices_sorted = sorted(zip(prices.values(), prices.keys()),reverse=True)
  27. # prices_sorted is [(10.75, 'FB'), (37.2, 'HPQ'),
  28. # (45.23, 'ACME'), (205.55, 'IBM'),
  29. # (612.78, 'AAPL')]
  30. print(prices_sorted)

python字典排序取最值总结的更多相关文章

  1. Python字典排序

    利用引出一个例子来理解 例如:比如使用Python字典排序,d={'a':1,'c':3,'b':2}按值升序排列,我们可以用sorted高阶函数或者用列表的.sort()方法.下面具体阐述两种排序方 ...

  2. python 字典(dict)按键和值排序

    python 字典(dict)的特点就是无序的,按照键(key)来提取相应值(value),如果我们需要字典按值排序的话,那可以用下面的方法来进行: 1 下面的是按照value的值从大到小的顺序来排序 ...

  3. python 字典排序 关于sort()、reversed()、sorted()

    一.Python的排序 1.reversed() 这个很好理解,reversed英文意思就是:adj. 颠倒的:相反的:(判决等)撤销的 print list(reversed(['dream','a ...

  4. python 字典排序,列表排序详细

    在程序中使用字典进行数据信息统计时,由于字典是无序的所以打印字典时内容也是无序的.因此,为了使统计得到的结果更方便查看需要进行排序.Python中字典的排序分为按“键”排序和按“值”排序. 1.按“值 ...

  5. <转>python字典排序 关于sort()、reversed()、sorted()

    一.Python的排序 1.reversed() 这个很好理解,reversed英文意思就是:adj. 颠倒的:相反的:(判决等)撤销的 print list(reversed(['dream','a ...

  6. Python 字典的一键多值,即一个键对应多个值

    转自:http://blog.csdn.net/houyj1986/article/details/22624981 #encoding=utf-8 print '中国' #字典的一键多值 print ...

  7. Python 字典的取值

    不能用.取值 .是获取属性或方法 只能用中括号或者get方法 中括号和get中可以放字符串或者变量 get与[]的区别在于当key不存在,get不会报错,而且get可以设置取不到值时返回的默认值.

  8. (转)Python 字典排序

    我们知道Python的内置dictionary数据类型是无序的,通过key来获取对应的value.可是有时我们需要对dictionary中 的item进行排序输出,可能根据key,也可能根据value ...

  9. mysql 分组排序取最值

    查各个用户下单最早的一条记录 查各个用户下单最早的前两条记录 查各个用户第二次下单的记录 一.建表填数据: SET NAMES utf8mb4; -- 取消外键约束 ; -- ------------ ...

随机推荐

  1. Trie树 模板

    普通Trie: struct TRIE{ ],tot,end[MAXN]; TRIE(){tot=;} void insert(char *s){//s为要插入的字符串 int len=strlen( ...

  2. linear-gradient

    http://jsbin.com/mocojehosa/edit?html,css,output https://developer.mozilla.org/zh-CN/docs/Web/CSS/li ...

  3. JQuery--漂亮的三目运算与jQ选择器结合代码

    $(function($) { $("input[name='timeset']").bind('click', function() { $(this).val() == 'cu ...

  4. 仓库盘点功能-ThinkPHP_学习随笔

    public function check() { $db = M('Bookinfo'); $region = I('post.region'); $c = $db -> count(); f ...

  5. 机器学习中的隐马尔科夫模型(HMM)详解

    机器学习中的隐马尔科夫模型(HMM)详解 在之前介绍贝叶斯网络的博文中,我们已经讨论过概率图模型(PGM)的概念了.Russell等在文献[1]中指出:"在统计学中,图模型这个术语指包含贝叶 ...

  6. java锁_IO_NIO_AIO_BIO_GC_Jvm

    如何保证线程安全,线程锁有哪些? 同步方法和同步代码块常见的锁:ReentrantLock与synchronized二者区别:             (1) 线程A和B都要获取对象O的锁定,假设A获 ...

  7. Eureka自我保护机制、健康检查的作用、actuator模块监控

    在上一篇文章微服务入门之服务的注册以及服务之间的调用中,我们基本实现了服务之间的调用,今天我们来了解一下Eureka自我保护机制以及健康检查. Eureka自我保护机制 接着以上篇文章建立的三个工程为 ...

  8. Vue开发警告[Vue warn]: Avoid replacing instance root $data. Use nested data properties instead.

    Avoid replacing instance root $data. Use nested data properties instead. 翻译 避免替换实例根$data.请改用嵌套数据属性 错 ...

  9. uni-app开发微信小程序引入UI组件库(Vant-weapp)步骤

    uni-app开发微信小程序引入UI组件库(Vant-weapp)步骤 这里以vant-weapp为例 uni-app官方文档介绍引入组件的方法 1. 新建相关目录 根目录下创建 wxcomponen ...

  10. 前端小知识--区分get和post请求

    get和post是HTTP协议中的两种发送请求的方法. 如果你还不了解http,可以点击[HTTP协议①介绍](https://www.jianshu.com/p/632b890b75ac)[HTTP ...