本文实例讲述了Python使用lambda表达式对字典排序操作。分享给大家供大家参考,具体如下:

lambda表达式也常用于字典排序,既然写到字典排序,那就把按键排序和按值排序都写写好了。

字典按键排序

显然按键排序,需要用字典中每个元素的第一项排序

dict = {'a':1,'b':2,'c':3,'d':4,'e':3,'f':1,'g':7}

sorted_dict_asc = sorted(dict.items(),key=lambda item:item[0])

sorted_dict_dsc = sorted(dict.items(),key=lambda item:item[0],reverse=True)

输出(第一个升序,第二个降序):

[('a', 1), ('b', 2), ('c', 3), ('d', 4), ('e', 3), ('f', 1), ('g', 7)]

[('g', 7), ('f', 1), ('e', 3), ('d', 4), ('c', 3), ('b', 2), ('a', 1)]]

字典按值排序

需要使用字典中每个元素的第二项进行排序

dict = {'a':1,'b':2,'c':3,'d':4,'e':3,'f':1,'g':7}

sorted_dict_asc = sorted(dict.items(),key=lambda item:item[1])

sorted_dict_dsc = sorted(dict.items(),key=lambda item:item[1],reverse=True)

输出

[('f', 1), ('a', 1), ('b', 2), ('e', 3), ('c', 3), ('d', 4), ('g', 7)]

[('g', 7), ('d', 4), ('e', 3), ('c', 3), ('b', 2), ('f', 1), ('a', 1)]

字典的多条件排序

如上例子,我们想将字典按值排序,当值相等时我们按键排序,那么就是多条件排序。

dict = {'f':1,'b':2,'c':3,'d':4,'e':3,'a':1,'g':7}

sorted_dict_asc = sorted(dict.items(),key=lambda item:(item[1],item[0]))

sorted_dict_dsc = sorted(dict.items(),key=lambda item:(item[1],item[0]),reverse=True)

PS:这里再为大家推荐一款关于排序的演示工具供大家参考:

希望本文所述对大家Python程序设计有所帮助。

python 字典排序 lambda_Python使用lambda表达式对字典排序操作示例相关推荐

  1. python之lambdas函数(lambda表达式)

    python之lambdas函数(lambda表达式) lambda函数,也称为lambda表达式. lambda函数(或lambda表达式)的语法: lambda arguments: expres ...

  2. python打开文件并读取内容-Python实现的读取文件内容并写入其他文件操作示例

    本文实例讲述了Python实现的读取文件内容并写入其他文件操作.分享给大家供大家参考,具体如下: 文件目录结构,如图: read_file.py是工作文件,file_test.py是读取文件源,wri ...

  3. lambda表达式python啥意思_Python中lambda表达式是什么

    Python中lambda表达式是什么 发布时间:2020-09-24 09:56:07 来源:亿速云 阅读:83 作者:Leah 本篇文章给大家分享的是有关Python中lambda表达式是什么,小 ...

  4. 刻意练习:Python基础 -- Task05. 函数与Lambda表达式

    背景 我们准备利用17天时间,将 "Python基础的刻意练习" 分为如下任务: Task01:变量.运算符与数据类型(1day) Task02:条件与循环(1day) Task0 ...

  5. 【Python 必会技巧】lambda 表达式(匿名函数)及其在内置函数中的应用

    lambda 表达式,又称匿名函数,即,函数没有具体的名称,常用来表示内部仅包含 1 行表达式的函数. 使用 lambda 编写的代码更加简洁紧凑,但是 lambda 函数支持的功能却是十分有限的,目 ...

  6. 技术图文:Python 匿名函数 VS. C# Lambda表达式

    背景 前段时间在知识星球上立了一个Flag,至少写10篇关于 Python,Matlab 和 C# 对比的总结. 这是第 2 篇,从定义和应用两个角度来对比 Python 的匿名函数 与 C# 的La ...

  7. python使用函数的优点-Lambda表达式在Python中的优点和缺点

    学过python的人,相信都接触过Lambda表达式.本文就来谈谈Lambda表达式在Python中的优点和缺点.一方面,Lambda函数的减少了代码的行数,方便又简洁.另一方面,Lambda表达式有 ...

  8. java 8 lambda 排序_Java8 用Lambda表达式给List集合排序的实现

    Lambda用到了JDK8自带的一个函数式接口Comparator. 准备一个Apple类 public class Apple { private int weight; private Strin ...

  9. c# python 相互调用_【GhPython】Python如何使用“委托”和lambda表达式

    [版权声明] | 作者:月之眼 | 首发于大水牛参数化设计平台 | 如需转载请联系作者 | 如果觉得文章不错,欢迎分享  函数作为参数传入  在python中函数是能作为参数输入函数的.这个有点类似于 ...

最新文章

  1. 这个人工智能强到让人感到害怕
  2. AMAB interconnector PL301(二)
  3. NeHe教程Qt实现——lesson13
  4. 面向对象(面向对象设计,面向对象编程,实例变量)
  5. 图像中添加二项式分布噪声
  6. cacls查看文件权限
  7. 零基础入门深度学习(7) - 递归神经网络
  8. java编程方向_java网络编程方向具体该怎么去学
  9. PyTorch批训练及优化器比较
  10. java设计模式-State模式
  11. 洛谷 P5056 【模板】插头dp
  12. AutoHotKey完成ass字幕文件字幕偏移时间修改
  13. qq分享至空间、好友自定义分享样式
  14. 《穷查理宝典》读书摘要和思维导图
  15. android 谷歌室内定位,打造室内导航 谷歌发布WifiRttScan App测试室内定位
  16. 微软梁念坚谈新平台 企业跨界办公随需而变
  17. 软工个人项目之生成和求解数独
  18. 四川职业技术学院linux,2019年四川交通职业技术学院单招中职(信息技术一类)专业技能测试大纲...
  19. openlayers在线地图:高德地图、天地图、谷歌、geoq(智图)
  20. Vue中使用友盟CNZZ事件统计

热门文章

  1. java3D反恐精英3_统一5.3.0f4错误CS0029;不能隐式转换'UnityEngine.Vector3'类型为'float'...
  2. php weize_docs.html
  3. go rpc安装方法
  4. python队列及其实现
  5. Scrapy 和 scrapy-redis的区别
  6. Ajax实现页面加载等待
  7. 强化学习《基于策略价值 - Asynchronous Adventage Actor-Critic》
  8. 深度学习《Transfer Learning》
  9. [深度学习-实践]Tensorflow 2.x应用ResNet SeNet网络训练cifar10数据集的模型在测试集上准确率 86%-87%,含完整代码
  10. 自然语言处理 —— 2.7负采样