102.Python——字典和列表排序

有时我们需要根据字典的键或值进行排序,或者当列表元素是元组时,也需要根据第几个元组的值进行排序。

一、先随机构造一个字典,长度为10,键是随机字符,值是随机整数

import random
#随机生成一个列表,用着字典的值
v=random.sample(range(100),10)

#随机生成一个列表,元素是英文字母,用着字典的键
k=random.sample(list('abcdefghijklmnopqrstuvwxyz'),10)

#两列表合并,元素为字典的键和值
kv=dict(zip(k,v))
print(kv)
#随机输出结果
{'r': 91, 'c': 12, 'z': 62, 'y': 8, 'v': 55, 'a': 25, 'i': 38, 'w': 84, 'd': 57, 'u': 19}

二、按照字典的值进行排序

#按照字典的值进行排序
v_sorted=sorted(kv.items(),key=lambda x:x[1],reverse=True)
print(v_sorted)
#排序结果
[('t', 96), ('q', 95), ('f', 68), ('g', 54), ('r', 39), ('w', 31), ('z', 22), ('d', 16), ('v', 11), ('l', 9)]

三、按照字典的键进行排序

#按照字典的键进行排序
k_sorted=sorted(kv.items(),key=lambda x:x[0])
print(k_sorted)
#排序结果
[('d', 16), ('f', 68), ('g', 54), ('l', 9), ('q', 95), ('r', 39), ('t', 96), ('v', 11), ('w', 31), ('z', 22)]

四、两列表合并,元素为字典的键和值

#字典转列表
lst=list(kv.items())
print(lst)
#转换结果
[('q', 95), ('g', 54), ('d', 16), ('t', 96), ('z', 22), ('w', 31), ('f', 68), ('r', 39), ('l', 9), ('v', 11)]

五、列表排序,根据元组的第2个元素的值

#列表排序,根据字典的值
lst.sort(key=lambda x:x[1],reverse=True)
print(lst)
#输出结果
[('t', 96), ('q', 95), ('f', 68), ('g', 54), ('r', 39), ('w', 31), ('z', 22), ('d', 16), ('v', 11), ('l', 9)]


本文主要演示字典或列表排序的一种方法。

相关文章

探索 Python 中合并两个字典的七种方法,找到最适合你的那一款!

在 Python 的世界里,字典作为一种强大的数据结构,扮演着举足轻重的角色。而合并字典,则是我们经常遇到的操作。Python 为我们提供了多种合并字典的方式,每种方式都有其独特的应用场景。探索 Py...

现代化python字典合并的技巧

现代Python字典合并:使用|运算符在Python 3.9之前,有两种常见的合并字典的方法:使用update方法或**运算符。然而,这两种方法都有其缺点。在本文中,我们将探讨Python中合并字典的...

python将两个字典进行合并的方法

在 Python 中,可以使用 update() 方法将一个字典合并到另一个字典中,也可以使用运算符 | 或 ** 将两个字典合并为一个新的字典。以下是示例代码,演示了三种不同的方式来合并字典:# 定...

Python 字典合并、求和大作战,轻松搞定各路数据

在使用 Python 采集来自不同渠道的数据,很多都是以字典的形式存储。将它们合并、处理是经常使用的进本操作,在本文中,我们将介绍多种合并和求和字典的方法。合并词典是指涉及将多个词典中的键值对合并到一...

Python 嵌套词典完整指南

当需要在 Python 中组织复杂的分层数据时,嵌套词典是必不可少的。它们对于处理 JSON 数据、配置设置或任何具有多个级别的结构化数据特别有用。了解嵌套词典嵌套词典只是包含其他词典作为值的词典。下...

Python 字典(Dictionary):高效数据映射的强大工具

在 Python 中,字典是一种基于键值对(key-value pairs)的数据结构,能够高效地进行数据映射(data mapping)和快速查找(efficient lookup)。字典以无序(u...