龙空技术网

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

UNET 192

前言:

此刻朋友们对“python字典按照键值排序”大致比较关注,各位老铁们都需要学习一些“python字典按照键值排序”的相关内容。那么小编在网络上收集了一些对于“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字典按照键值排序