python字典排序及字典集合去重高阶教程
学习目标:
字典dict排序:指定按照key排序或values排序。
对字典或者list去除重复元素。
学习内容:
提示:准备
dicta ={'a':1,'b':2,'d':7,'c':23,'m':21,'f':4}
1、字典dict按key排序,升序或降序
按照字典的key排序:
dicta_sorted = sorted(dicta.items(),key=lambda x :x[0])
print(dicta_sorted)
输出结果:
[('a', 1), ('b', 2), ('c', 23), ('d', 7), ('f', 4), ('m', 21)]
默认升序,如果要降序,则:
dicta_sorted = sorted(dicta.items(),key=lambda x :x[0],reverse=True)
print(dicta_sorted)
输出结果:
[('m', 21), ('f', 4), ('d', 7), ('c', 23), ('b', 2), ('a', 1)]
2、 字典dict按values排序,升序或降序
升序
dicta_sorted = sorted(dicta.items(),key=lambda x :x[1])
print(dicta_sorted)
结果:
[('a', 1), ('b', 2), ('f', 4), ('d', 7), ('m', 21), ('c', 23)]
降序:
dicta_sorted = sorted(dicta.items(),key=lambda x :x[1],reverse=True)
print(dicta_sorted)
结果:
[('c', 23), ('m', 21), ('d', 7), ('f', 4), ('b', 2), ('a', 1)]
3、 对字典dict或者list中去重,输出去重后的个数
不能用for循环一个个去遍历判断values是否重复,太消耗时间,充分利用dict查找数据和set去重的特性。
def find_unique_price_using_set(products):unique_price_set = set()for _, price in products:unique_price_set.add(price)return len(unique_price_set) products = [(143121312, 100), (432314553, 30),(32421912367, 150),(937153201, 30)
]
print('number of unique price is: {}'.format(find_unique_price_using_set(products)))# 输出 number of unique price is: 3
或者
def find_unique_price_using_set_dict(products):dist_products=dict(products)set_price=set(dist_products.values())return len(set_price)
products = [(143121312, 100), (432314553, 30),(32421912367, 150),(937153201, 30)
]import time
# 计算集合_字典版本的时间
start_using_set = time.perf_counter()
find_unique_price_using_set_dict(products)
end_using_set = time.perf_counter()
print("time elapse using set_dict: {}".format(end_using_set - start_using_set))
两个方法差不多,运行时间都很短,去重效率很高。对一万个数据去重只用0.0123秒
4、 掌握循环语句
学习时间:
理论10分钟,时间30分钟
学习产出:
掌握:
1、字典dict排序,可指定按照key排序,也可以按照values排序。
2、集合set去重操作。
python字典排序及字典集合去重高阶教程相关推荐
- python字典排序sort_Python字典排序
利用引出一个例子来理解 例如:比如使用Python字典排序,d={'a':1,'c':3,'b':2}按值升序排列,我们可以用sorted高阶函数或者用列表的.sort()方法.下面具体阐述两种排序方 ...
- Python中匿名函数与内置高阶函数详解
大家好,从今天起早起Python将持续更新由小甜同学从 初学者的角度 学习Python的笔记,其特点就是全文大多由 新手易理解 的 代码与注释及动态演示 .刚入门的读者千万不要错过! 很多人学习pyt ...
- python openpyxl读写xlsx_python高阶教程-python操作xlsx文件(openpyxl)
本篇内容来自原创小册子<python高阶教程>,点击查看目录. 背景 在处理一些作业时,经常会碰到统计未交人数.分数等需求,虽然我们在数据库中有了对应的数据, 但是数据库只是面向开发者的, ...
- Python数据结构与算法(1.3)——Python基础之输入、输出与高阶赋值
Python数据结构与算法(1.3)--Python基础之输入.输出与高阶赋值 0. 学习目标 1. 输入.输出与注释 1.1 获取用户输入 1.2 格式化输出 1.2.1 基本方法 1.2.2 fo ...
- hexo高阶教程:想让你的博客被更多的人在搜索引擎中搜到吗?
本文首发在我的个人博客:http://cherryblog.site/,欢迎大家前去参观,顺便求fork,么么哒~ 上一次在掘金上发表的hexo高阶教程:hexo高阶教程next主题优化之加入网易云音 ...
- Python字典排序、字典列表排序、嵌套字典排序
python字典是常用的数据结构,经常用到各种python字典的排序,记录一下不同字典排序的方法. 正常字典排序 正常的字典我们都知道,其排序如下: a={100:1,101:0,102:2}b=so ...
- python 对输入的单词进行字典排序_Python-对字典进行排序
案例: 某班英语成绩以字典的形式存储为: {'lili':78, 'jin':50, 'liming': 30, ......} 依据成绩高低,进行学生成绩排名 如何对字典排序? 方法1: #!/us ...
- python学习-综合练习六(列表翻转、变量交换、复制列表、元素求和(lambda和递归)、字典排序、字典pop)
文章目录 列表翻转 变量交换 复制列表 元素求和 字典排序 字典pop 说明:本篇博文的知识点大部分来自 Python3 实例 列表翻转 列表翻转就是把列表的值按顺序左移,逻辑还是挺简单的. 我之前的 ...
- python单词字典排序_python字典排序
使用operator排序 按字典的值排序(默认为升序): import operator x = {1:2, 3:4, 4:3, 2:1, 0:0} sorted_x = sorted(x.items ...
最新文章
- 第四章 数据库和SQL 4-3 数据的更新(UPDATE语句的使用方法)
- Paper:2020年3月30日何恺明团队最新算法RegNet—来自Facebook AI研究院《Designing Network Design Spaces》的翻译与解读
- 以持续集成工具实现DevOps之禅
- C++ deque 底层原理及 queue、stack 容器的使用详解
- Redis基础-下载安装配置
- 数据揭秘中国女性的薪水普遍比男性低,说好的“同工同酬”呢?
- 语音识别中的CTC算法的基本原理解释
- python为什么是蛇的天敌_蛇的天敌有哪些?
- 每日思考第 61 期:职场PUA与情场PUA
- 上海万国驾校 科目三考试
- RS485,uart串口加瑞芬68协议
- WEB漏洞之:海洋CMS代码执行(CNVD-2020-22721)
- stick to it
- 【毕业设计】基于单片机的智能衣柜系统设计 - 物联网 stm32 嵌入式
- 不看绝对血亏!docker镜像下载不下来
- 【7 查找】二叉排序树查找关键字。
- [附源码]计算机毕业设计基于springboot的4s店车辆管理系统
- 社交网络分析:网络中心性
- r245fa物性_2FA应该是强制性的吗?
- 达美航空入驻全新上海浦东国际机场卫星厅
热门文章
- 在哪开启oracle服务器,开启企业殿堂的钥匙 Oracle服务器的安装
- 谷歌扇区图层制作工具_很实用!轻松实现Mapinfo和GoogleEarth图层的数据转换
- mysql 有empty_blob()_【原创】操作Blob类型的方法
- 渲染器跑分_这一次会挤牙膏吗?9400F/10400跑分对比
- 时间序列分析 pdf_多变量时间序列的聚类分析与相似查询——多变量时间序列的相似查询分析...
- 【bug记录】android:Program type already present: android.support.v4.app.INotificationSideChannel
- 硬盘温度70度正常吗_读懂固态硬盘:NVMe SSD的SMART健康数据这样看
- QComboBox样式
- Android studio中git密码记住的问题
- KXMovie基于ffmpeg的播放器