python字典按照value排序方法

python中,我们可以对列表、字符串、元祖中的元素进行排序,那对于字典中的元素可以排序吗?其实对于字典本身我们无法进行排序,但是我们可以对字典按值排序。本文介绍python中对字典按照value进行排序的三种方法。

方法一:key使用lambda匿名函数取value进行排序

dict= {'a':1,'b':4,'c':2}
sorted(dict.items(),key = lambda x:x[1],reverse = True)

方法二:使用operator的itemgetter进行排序

test_data_6=sorted(dict_data.items(),key=operator.itemgetter(1))
test_data_7=sorted(dict_data.items(),key=operator.itemgetter(1),reverse=True)
print(test_data_6) #[(8, 2), (10, 5), (7, 6), (6, 9), (3, 11)]
print(test_data_7) #[(3, 11), (6, 9), (7, 6), (10, 5), (8, 2)]

方法三:key和value分装成元祖,再进行排序

f = zip(d.keys(), d.values())
c = sorted(f)
print(c)

字典按value排序内容扩展:

保存为字典后,按字典的value值大小排序,这个才是本题的难点,由于dict是无序的,所以只能用list去排序,把dict的key和value保存为tuplue对象

# 对字典按value排序
a = sorted(d.items(), key=lambda x: x[1], reverse=True)
print(a)

参考代码:

# coding:utf-8

# 作者:上海-悠悠
a = ["a", "b", "a", "c", "a", "c", "b", "d", "e", "c", "a", "c"]

# set集合去重
duixiang = set(a) # 先去重,取出计数对象

# 保存为dict,一一对应
d = {}
for i in duixiang:
  d[i] = a.count(i)

# 对字典按value排序
a = sorted(d.items(), key=lambda x: x[1], reverse=True)
print(a)

到此这篇关于python字典按照value排序方法的文章就介绍到这了,更多相关python中字典如何按照value排序内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • 详解python的sorted函数对字典按key排序和按value排序

    1.sorted函数按key值对字典排序 先来基本介绍一下sorted函数,sorted(iterable,key,reverse),sorted一共有iterable,key,reverse这三个参数. 其中iterable表示可以迭代的对象,例如可以是 dict.items().dict.keys()等,key是一个函数,用来选取参与比较的元素,reverse则是用来指定排序是倒序还是顺 序,reverse=true则是倒序,reverse=false时则是顺序,默认时reverse=fal

  • Python实现字典依据value排序

    具体内容如下: 使用sorted将字典按照其value大小排序 >>> record = {'a':89, 'b':86, 'c':99, 'd':100} >>> sorted(record.items(), key=lambda x:x[1]) [('b', 86), ('a', 89), ('c', 99), ('d', 100)] sorted第一个参数要可迭代,可以为tuple, list >>> items = [(1, 'B'), (1,

  • Python使用sorted对字典的key或value排序

    sorted函数 sorted(iterable,key,reverse) iterable 待排序的可迭代对象 key 对应的是个函数, 该函数用来决定选取用哪些值来进行排序 reverse 反转排序 对key排序 d: dict = {"p": 59, "o": 9, "s": 5, "a": 20, "z": 18} li: list = sorted(d.keys()) print(li) 执行结果

  • Python实现的字典排序操作示例【按键名key与键值value排序】

    本文实例讲述了Python实现的字典排序操作.分享给大家供大家参考,具体如下: 对字典进行排序?这其实是一个伪命题,搞清楚python字典的定义---字典本身默认以key的字符顺序输出显示---就像我们用的真实的字典一样,按照abcd字母的顺序排列,并且本质上各自没有先后关系,是一个哈希表的结构: 但实际应用中我们确实有这种排序的"需求"-----按照values的值"排序"输出,或者按照别的奇怪的顺序进行输出,我们只需要把字典转化成list或者tuple,把字典每

  • python字典按照value排序方法

    python中,我们可以对列表.字符串.元祖中的元素进行排序,那对于字典中的元素可以排序吗?其实对于字典本身我们无法进行排序,但是我们可以对字典按值排序.本文介绍python中对字典按照value进行排序的三种方法. 方法一:key使用lambda匿名函数取value进行排序 dict= {'a':1,'b':4,'c':2} sorted(dict.items(),key = lambda x:x[1],reverse = True) 方法二:使用operator的itemgetter进行排序

  • python字典多条件排序方法实例

    项目编写过程中,总能遇见对字典进行排序什么的,如果要实现多条件排序只需要下面几行代码实现.充分体现了python的好处了. 复制代码 代码如下: teamitems = [{'team':'France'     , 'P':1 , 'GD':-3 , 'GS':1 , 'GA':4},             {'team':'Uruguay'     , 'P':7 , 'GD':4  , 'GS':4 , 'GA':0},             {'team':'SouthAfrica'

  • Python 字典中的所有方法及用法

    字典是Python中唯一内建的映射类型.字典中没有特殊的顺序,但都是存储在一个特定的键(key)下面,键可以是数字,字符串,甚至是元组 字典的使用 在某些情况下,字典比列表更加适用: 1.表示一个游戏棋盘的状态,每个键都是由坐标值组成的元组 2.存储文件修改时间,用文件名作为键; 3.数字电话\地址薄 创建字典的五种方式 # 字典的创建方式 # 方式一 {key: value} dict1 = {'one': 1, 'two': 2, 'three': 3} print(dict1) # 方式二

  • 利用For循环遍历Python字典的三种方法实例

    目录 前言 方法 1:使用 For 循环 + 索引进行迭代 方法 2:使用 .keys( ) + 索引进行迭代 方法 3:使用 .items( ) 进行迭代 进阶:遍历嵌套字典 总结 前言 在Python中,如何使用“for”循环遍历字典? 今天我们将会演示三种方法,并学会遍历嵌套字典. 在实战前,我们需要先创建一个模拟数据的字典. dict_1 = {'Name': 'Zara', 'Age': 7, 'Class': 'First','Address':'Beijing'} 方法 1:使用

  • python字典改变value值方法总结

    今天这篇文章中我们来了解一下python之中的字典,在这文章之中我会对python字典修改进行说明,以及举例说明如何修改python字典内的值.废话不多说,我们开始进入文章吧. 首先我们得知道什么是修改字典 修改字典 向字典添加新内容的方法是增加新的键/值对,修改或删除已有键/值对如下实例: # !/usr/bin/python dict = {'Name': 'Zara', 'Age': 7, 'Class': 'First'}; dict['Age'] = 8; # update exist

  • python实现列表的排序方法分享

    这次代码主要是实现列表的排序,使用sort函数实现,sort函数是对列表中的元素按照特定顺序进行排序,默认reverse,为false,从小到大排序, 如果指定reverse=True,从大到小. 语法格式:l.sort(),希望对你们有所帮助 第一步:先打开我们的pycharm软件,然后新建一个python文件."file","new","python file" 第二步:新建好我们的python文件之后,在我们的编辑页面输入以下代码: l=[

  • python 字典 setdefault()和get()方法比较详解

    dict.setdefault(key, default=None) --> 有key获取值,否则设置 key:default,并返回default,default默认值为None dict.get(key, default=None) --> 有key获取值,否则返回default.default默认值为None. 例子:循环迭代message字符串中每个字符,计算每个字符出现的次数 import pprint message = "It is a good day, is not

  • python 使用值来排序一个字典的方法

    下面先看下python 使用值排序字典的方法 In [8]: a={'x':11,'y':22,'c':4} In [9]: import operator In [10]: sorted(a.items(),key=operator.itemgetter(1)) Out[10]: [('c', 4), ('x', 11), ('y', 22)] In [11]: a={'x':11,'y':22,'c':4} In [12]: sorted(a.items(),key=lambda x:x[1

  • 在Python中字典按值排序的实现方法

    一.sorted高阶函数 这种方法更为简洁,更为推荐. d={'a':1,'c':3,'b':2} # 首先建一个字典d #d.items()返回的是: dict_items([('a', 1), ('c', 3), ('b', 2)]) d_order=sorted(d.items(),key=lambda x:x[1],reverse=False) # 按字典集合中,每一个元组的第二个元素排列. # x相当于字典集合中遍历出来的一个元组. print(d_order) # 得到: [('a'

  • Python编程对列表中字典元素进行排序的方法详解

    本文实例讲述了Python编程对列表中字典元素进行排序的方法.分享给大家供大家参考,具体如下: 内容目录: 1. 问题起源 2. 对列表中的字典元素排序 3. 对json进行比较(忽略列表中字典的顺序) 一.问题起源 json对象a,b a = '{"ROAD": [{"id": 123}, {"name": "no1"}]}' b = '{"ROAD": [{"name": "

随机推荐