
python中自定义sort 规则
发布日期:2025-05-12 10:45:43
浏览次数:2
分类:精选文章
本文共 1128 字,大约阅读时间需要 3 分钟。
数据准备与统计分析
数据结构
list_test = [ [[1, 2, 3], [4, 5, 6]], [[1, 3, 4], [7, 8, 9], [1, 3, 3]]]
统计结果
result = [x for i in list_test for j in i for x in j]# 输出结果:[1, 2, 3, 4, 5, 6, 1, 3, 4, 7, 8, 9, 1, 3, 3]
使用Counter进行统计
from collections import Countercounter_result = Counter(result)# 输出结果:Counter({1: 3, 2: 1, 3: 4, 4: 2, 5: 1, 6: 1, 7: 1, 8: 1, 9: 1})
items()方法转换
# 将Counter转换为元祖结构counter_result.items()# 输出结果:[(1, 3), (2, 1), (3, 4), (4, 2), (5, 1), (6, 1), (7, 1), (8, 1), (9, 1)]
判断类型
print('是否是可迭代对象\n', isinstance(counter_result.items(), Iterable))# print('type\n', type(counter_result.items()))# 输出结果:是否是可迭代对象 True# (1, 3), (2, 1), (3, 4), (4, 2), (5, 1), (6, 1), (7, 1), (8, 1), (9, 1)
自定义排序
# 按照值降序排序sorted(counter_result.items(), key=lambda x: x[1], reverse=True)# 输出结果:[(3, 4), (1, 3), (4, 2), (2, 1), (5, 1), (6, 1), (7, 1), (8, 1), (9, 1)]
按值升序排序
sorted(counter_result.items(), key=lambda x: x[1])# 输出结果:[(2, 1), (5, 1), (6, 1), (7, 1), (8, 1), (9, 1), (4, 2), (1, 3), (3, 4)]
分析
通过对Counter.items()进行排序,可以根据值的大小来重新排列数据,方便后续的分析和展示。默认情况下,sorted函数会按照指定的关键函数(这里是x[1])进行升序排列。如果需要降序排列,可以通过设置reverse=True来实现。
发表评论
最新留言
哈哈,博客排版真的漂亮呢~
[***.90.31.176]2025年04月14日 17时45分22秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
elasticsearch的helpers.bulk和es_client.bulk的用法
2023-01-24
ElasticSearch设置字段的keyword属性
2023-01-24
Elasticsearch设置账号密码
2023-01-24
Elasticsearch面试题
2023-01-24
Hibernate二级缓存配置
2023-01-24
element 如何使用自定义icon图标
2023-01-24
element-plus修改主题颜色
2023-01-24
18 个一线工作中常用 Shell 脚本【实用版】
2023-01-24
element-ui:el-input输入数字-整数和小数
2023-01-24
ElementUI-el-progress改变进度条颜色跟文字样式
2023-01-24
ELK原理与介绍(转)
2023-01-24
ELK学习笔记(三)单台服务器多节点部署
2023-01-24
ELK应用日志收集实战
2023-01-24
elTable火狐浏览器换行
2023-01-24
15个Python数据处理技巧(非常详细)零基础入门到精通,收藏这一篇就够了
2023-01-24