Python中常用的字典键和值排的方法
作者:Python数据挖掘 时间:2022-12-22 15:51:05
使用 sorted() 函数
使用 sorted() 函数对字典进行排序,将其转换为元组列表,再按照指定的键或者值进行排序。
按照键排序的示例代码
d = {'apple': 4, 'banana': 2, 'pear': 1, 'orange': 3}
sorted_d = dict(sorted(d.items(), key=lambda x: x[0]))
print(sorted_d)
结果如下:
按照值排序的示例代码
d = {'apple': 4, 'banana': 2, 'pear': 1, 'orange': 3}
sorted_d = dict(sorted(d.items(), key=lambda x: x[1]))
print(sorted_d)
结果如下:
使用 itemgetter() 函数
可以使用 operator 模块的 itemgetter() 函数对字典进行排序,将其转换为元组列表,然后按照指定的键或者值进行排序。
按照键排序的示例代码
from operator import itemgetter
d = {'apple': 4, 'banana': 2, 'pear': 1, 'orange': 3}
sorted_d = dict(sorted(d.items(), key=itemgetter(0)))
print(sorted_d)
结果如下:
按照值排序的示例代码
from operator import itemgetter
d = {'apple': 4, 'banana': 2, 'pear': 1, 'orange': 3}
sorted_d = dict(sorted(d.items(), key=itemgetter(1)))
print(sorted_d)
结果如下:
使用 OrderedDict 类
可以使用 collections 模块的 OrderedDict 类对字典进行排序。OrderedDict 是一个有序的字典,它保留了元素插入的顺序。
按照键排序的示例代码
from collections import OrderedDict
d = {'apple': 4, 'banana': 2, 'pear': 1, 'orange': 3}
sorted_d = OrderedDict(sorted(d.items(), key=lambda x: x[0]))
print(sorted_d)
结果如下:
按照值排序的示例代码
from collections import OrderedDict
d = {'apple': 4, 'banana': 2, 'pear': 1, 'orange': 3}
sorted_d = OrderedDict(sorted(d.items(), key=lambda x: x[1]))
print(sorted_d)
结果如下:
使用 zip() 函数
可以使用 zip() 函数将字典的键和值分别转换为列表,然后按照指定的键或者值进行排序,最后将排序后的键和值重新组成字典。
按照键排序的示例代码
d = {'apple': 4, 'banana': 2, 'pear': 1, 'orange': 3}
keys = list(d.keys())
values = list(d.values())
sorted_keys = sorted(keys)
sorted_values = [d[k] for k in sorted_keys]
sorted_d = dict(zip(sorted_keys, sorted_values))
print(sorted_d)
结果如下:
照值排序的示例代码
d = {'apple': 4, 'banana': 2, 'pear': 1, 'orange': 3}
keys = list(d.keys())
values = list(d.values())
sorted_values = sorted(values)
sorted_keys = [keys[values.index(v)] for v in sorted_values]
sorted_d = dict(zip(sorted_keys, sorted_values))
print(sorted_d)
结果如下:
使用 Pandas 库
可以使用 Pandas 库将字典转换为 DataFrame,然后按照指定的键或者值进行排序,最后将排序后的 DataFrame 转换为字典。
按照键排序的示例代码
import pandas as pd
d = {'apple': 4, 'banana': 2, 'pear': 1, 'orange': 3}
df = pd.DataFrame(list(d.items()), columns=['fruit', 'count'])
sorted_df = df.sort_values('fruit')
sorted_d = dict(zip(sorted_df['fruit'], sorted_df['count']))
print(sorted_d)
结果如下:
按照值排序的示例代码
import pandas as pd
d = {'apple': 4, 'banana': 2, 'pear': 1, 'orange': 3}
df = pd.DataFrame(list(d.items()), columns=['fruit', 'count'])
sorted_df = df.sort_values('count')
sorted_d = dict(zip(sorted_df['fruit'], sorted_df['count']))
print(sorted_d)
结果如下:
来源:https://blog.csdn.net/qq_34160248/article/details/129480914
标签:Python,字典,键,值,排序
0
投稿
猜你喜欢
PHP基础知识详细讲解
2023-06-03 15:41:45
python中GIL的原理及用法总结
2023-03-11 07:43:13
解决jupyter notebook启动后没有token的坑
2023-03-18 23:46:37
Python基于列表模拟堆栈和队列功能示例
2021-08-17 01:36:14
Python设计模式之抽象工厂模式原理与用法详解
2023-01-25 16:05:43
MySQL分页优化解析
2008-12-22 14:56:00
深入理解Python装饰器
2023-11-05 13:01:43
asp下通过HTTP_USER_AGENT判断用户是从手机上访问,还是电脑IE上访问
2011-02-24 11:00:00
PyTorch 如何将CIFAR100数据按类标归类保存
2023-01-10 06:01:03
ASP中生成文本文件的两种方式
2008-04-30 19:33:00
JAVA正则表达式及字符串的替换与分解相关知识总结
2023-02-01 20:59:53
Python数学建模库StatsModels统计回归简介初识
2021-05-05 04:57:02
python网络爬虫精解之pyquery的使用说明
2021-05-28 13:01:19
CentOS7.5 安装 Mysql8.0.19的教程图文详解
2024-01-13 07:28:26
python实现飞机大战游戏(pygame版)
2021-11-11 17:59:24
Python md5与sha1加密算法用法分析
2021-04-21 01:51:44
Python实现数据集划分(训练集和测试集)
2022-11-29 23:54:11
pycharm + django跨域无提示的解决方法
2021-11-07 21:15:39
Vuex简单入门
2024-05-02 16:58:26
js实现兼容性好的微软官网导航下拉菜单效果
2024-04-22 13:09:20