python字典排序浅析介绍

目录
  • 1.语法规则
    • 1-1 代码实例
    • 1-2 参数说明
  • 2.对字典排序
    • 2-1 简单示例
    • 2-2 说明
    • 2-3 复杂示例
    • 2-4 说明

1.语法规则

1-1 代码实例

sorted(iterable, key=None,reverse=False)

1-2 参数说明

(1)iterable:代表的是可迭代的对象。

(2)key=None:用来进行比较的元素,具体的值来源于可迭代的对象中。

(3)reverse=False:排序规则,reverse=False升序(默认),reverse=True降序。

2.对字典排序

2-1 简单示例

# 字典排序
entity_dict = {'金日成': 1,'西班牙': 4,'碧月珠': 1}
# 按照字典的值进行排序
entity_dict_1 = sorted(entity_dict.items(), key=lambda x: x[1])
# 按照字典的键进行排序
entity_dict_2 = sorted(entity_dict.items(), key=lambda x: x[0])

排序结果:

2-2 说明

以entity_dict.items()返回的列表中的每一个元素,作为匿名函数(lambda)的参数,x[0]即用“键”排序,x[1]即用“值”排序;返回结果为新的列表,可以通过dict()函数转为字典格式。

2-3 复杂示例

entity_dict = [{'name': '金日成', 'count': 1}, {'name': '西班牙','count':4}, {'name': '碧月珠', 'count': 2},{'name': '金日成', 'count': 6}]
#按name排序
entity_dict_1 = sorted(entity_dict, key=lambda x: x['name'])
#按count降序排序
entity_dict_2 = sorted(entity_dict, key=lambda x: x['count'],  reverse=True)
#name相同按count降序排序
entity_dict_3 = sorted(entity_dict, key=lambda x: (x['name'], -x['count']))

排序结果:

2-4 说明

以列表里面的每一个字典元素作为匿名函数的参数,然后根据需要用键取字典里面的元素作为排序的条件,如x[‘name’]即用name键对应的值来排序。

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

(0)

相关推荐

  • python字典排序的方法

    python字典怎么排序? 定义一个字典类型 mydict = {2: '小路', 3: '黎明', 1: '郭富城', 4:'周董'} 可分别打印 key和value 看一下数据 按KEY排序,使用了 lambda和 reverse= False(正序) key和value都输出 reverse= True(逆序) 按value排序,汉字次序不是按拼音输出 sorted并不改变字典本身的数据次序. 输出后为列表和元组 可以 A = sorted(mydict.items(),key = lam

  • 在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的内置dictionary数据类型是无序的,通过key来获取对应的value.可是有时我们需要对dictionary中 的item进行排序输出,可能根据key,也可能根据value来排.到底有多少种方法可以实现对dictionary的内容进行排序输出呢?下面摘取了 一些精彩的解决办法. python对容器内数据的排序有两种,一种是容器自己的sort函数,一种是内建的sorted函数. sort函数和sorted函数唯一的不同是,sort是在容器内(in-place)排序,so

  • python复合条件下的字典排序

    知乎上有人说,Python3.6以后字典有序且更高效了.群里有同学推荐了这篇文章给我看,并咨询字典排序的问题. 大致浏览了一下,我当即表示不能认同这个说法.这篇文章的作者,应该是一位资深的专业人士,对于Python解释器如何实现字典存储和检索有着深刻地理解.但他犯了一明显的常识性错误:在逻辑上,字典是数据的无序集合,仅依赖于键检索.我们说字典是无序,不是指字典在物理实体上实现的时候真的无序,而是指它的顺序对用户而言没有明确的界定,不能作为数据的特性使用.知乎上这篇文章讲的字典有序,是指字典在物理

  • Python按键或值对字典进行排序

    给定一个字典,然后按键(key)或值(value)对字典进行排序. def dictionairy(): # 声明字典 key_value ={} # 初始化 key_value[2] = 56 key_value[1] = 2 key_value[5] = 12 key_value[4] = 24 key_value[6] = 18 key_value[3] = 323 print ("按键(key)排序:") # sorted(key_value) 返回重新排序的列表 # 字典按键

  • python字典排序浅析介绍

    目录 1.语法规则 1-1 代码实例 1-2 参数说明 2.对字典排序 2-1 简单示例 2-2 说明 2-3 复杂示例 2-4 说明 1.语法规则 1-1 代码实例 sorted(iterable, key=None,reverse=False) 1-2 参数说明 (1)iterable:代表的是可迭代的对象. (2)key=None:用来进行比较的元素,具体的值来源于可迭代的对象中. (3)reverse=False:排序规则,reverse=False升序(默认),reverse=True

  • python字典排序实例详解

    本文实例分析了python字典排序的方法.分享给大家供大家参考.具体如下: 1. 准备知识: 在python里,字典dictionary是内置的数据类型,是个无序的存储结构,每一元素是key-value对: 如:dict = {'username':'password','database':'master'},其中'username'和'database'是key,而'password'和'master'是value,可以通过d[key]获得对应值value的引用,但是不能通过value得到k

  • Python字典操作详细介绍及字典内建方法分享

    创建 方法一: >>> dict1 = {} >>> dict2 = {'name': 'earth', 'port': 80} >>> dict1, dict2 ({}, {'port': 80, 'name': 'earth'}) 方法二:从Python 2.2 版本起,可以使用一个工厂方法,传入一个元素是列表的元组作为参数 >>> fdict = dict((['x', 1], ['y', 2])) >>> f

  • Python 字典(Dictionary)详细介绍

    目录 1.访问字典里的值 2.修改字典 3.删除字典元素 3.1字典键的特性 4.字典内置函数&方法 字典是另一种可变容器模型,且可存储任意类型对象. 字典的每个键值 key=>value 对用冒号 : 分割,每个键值对之间用逗号 , 分割,整个字典包括在花括号 {} 中 格式如下所示: d = {key1 : value1, key2 : value2 } 注意:dict 作为 Python 的关键字和内置函数,变量名不建议命名为 dict. 键一般是唯一的,如果重复最后的一个键值对会替换

  • Python 字典dict使用介绍

    Python字典的创建 方法一: >>> blank_dict = {} >>> product_dict = {'MAC':8000,'Iphone':5000, 'ipad':4000, 'mp3': 300} >>> product_dict {'ipad': 4000, 'MAC': 8000, 'Iphone': 5000, 'mp3': 300} >>> blank_dict,product_dict ({}, {'ipa

  • Python Trie树实现字典排序

    一般语言都提供了按字典排序的API,比如跟微信公众平台对接时就需要用到字典排序.按字典排序有很多种算法,最容易想到的就是字符串搜索的方式,但这种方式实现起来很麻烦,性能也不太好.Trie树是一种很常用的树结构,它被广泛用于各个方面,比如字符串检索.中文分词.求字符串最长公共前缀和字典排序等等,而且在输入法中也能看到Trie树的身影. 什么是Trie树 Trie树通常又称为字典树.单词查找树或前缀树,是一种用于快速检索的多叉树结构.如图数字的字典是一个10叉树: 同理小写英文字母或大写英文字母的字

  • 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使用random.shuffle()随机打乱字典排序

    示例.1 import random from random import shuffle x = [[i] for i in range(10)] shuffle(x) print(x) 运行结果: [[1], [2], [5], [0], [7], [9], [3], [8], [4], [6]][[6], [0], [7], [1], [3], [9], [5], [2], [4], [8]] 示例.2 dicts = { "productCode": "xyd&quo

随机推荐