python 根据字典的键值进行排序的方法

yipeiwu_com7年前Python基础

1、利用key排序

d = {'d1':2, 'd2':4, 'd4':1,'d3':3,}
for k in sorted(d):
  print(k,d[k])
d1 2
d2 4
d3 3
d4 1

2、利用value排序:__getitem__

d = {'d1':2, 'd2':4, 'd4':1,'d3':3,}
for k in sorted(d,key=d.__getitem__):
  print(k,d[k])

d4 1
d1 2
d3 3
d2 4

反序:reverse=True

d = {'d1':2, 'd2':4, 'd4':1,'d3':3,}
for k in sorted(d,key=d.__getitem__,reverse=True):
  print(k,d[k])

d2 4
d3 3
d1 2
d4 1

3、对dict_items进行排序

d = {'d1':2, 'd2':4, 'd4':1,'d3':3,}
res = sorted(d.items(),key=lambda d:d[1],reverse=True)
print(res)

 [('d2', 4), ('d3', 3), ('d1', 2), ('d4', 1)]

ps:下面给大家介绍两个函数

1.lambda

功能: 创建匿名函数

区别: 和def函数定义,以下两点区别

•lambda会创建一个函数对象,但不会把这个函数对象赋给一个标识符;而def则会把函数对象赋值给一个变量
•lambda它只是一个表达式,而def则是一个语句

案例:

2.iteritems()

功能: iteritems()以迭代器对象返回字典键值对

区别: 和item相比:items以列表形式返回字典键值对

案例:

注释: 在函数sorted(dic.iteritems(), key = lambda asd:asd[1])中,第一个参数传给第二个参数“键-键值”,第二个参数取出其中的键([0])或键值(1])

总结

以上所述是小编给大家介绍的python 根据字典的键值进行排序的方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对【听图阁-专注于Python设计】网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

相关文章

python global关键字的用法详解

最近刚好有朋友遇到个global相关的问题,这里简单学习一下global关键字的用法。 想要更好的了解global关键字,首先要熟悉python的全局变量与局部变量的概念。global关...

如何使用七牛Python SDK写一个同步脚本及使用教程

如何使用七牛Python SDK写一个同步脚本及使用教程

七牛云存储的 Python 语言版本 SDK(本文以下称 Python-SDK)是对七牛云存储API协议的一层封装,以提供一套对于 Python 开发者而言简单易用的开发工具。Pytho...

Python操作Access数据库基本步骤分析

本文实例分析了Python操作Access数据库基本步骤。分享给大家供大家参考,具体如下: Python编程语言的出现,带给开发人员非常大的好处。我们可以利用这样一款功能强大的面向对象开...

Python实现的逻辑回归算法示例【附测试csv文件下载】

Python实现的逻辑回归算法示例【附测试csv文件下载】

本文实例讲述了Python实现的逻辑回归算法。分享给大家供大家参考,具体如下: 使用python实现逻辑回归 Using Python to Implement Logistic Reg...

Python列表生成器的循环技巧分享

Python列表生成器的循环技巧分享

列表生成式即List Comprehensions,是Python内置的非常简单却强大的可以用来创建list的生成式。 一个循环 在C语言等其他语言中,for循环一般是这样的 如果py...