首页
学习
活动
专区
工具
TVP
发布

Python 高效编程技巧

Python 提供了几个高级内置函数,另外还有几个比较实用的库,比如 collections,这里推荐一篇文章,介绍几个小的 Tips,如果大家用上的话可以稍微提高一些开发效率,希望对大家有帮助哈。

转载来源

阅读本文大概需要 5 分钟。

工作中经常要处理各种各样的数据,遇到项目赶进度的时候自己写函数容易浪费时间。

Python 中有很多内置函数帮你提高工作效率!

一. 根据条件在序列中筛选数据

1. 假设有一个数字列表 data, 过滤列表中的负数

使用列表推导式:

使用fliter过滤函数:

2. 学生的数学分数以字典形式存储,筛选其中分数大于 80 分的同学

二. 对字典的键值对进行翻转

使用 zip() 函数

zip() 函数用于将可迭代的对象作为参数,将对象中对应的元素打包成一个个元组,然后返回由这些元组组成的列表。

三. 统计序列中元素出现的频度

1. 某随机序列中,找到出现次数最高的3个元素,它们出现的次数是多少?

构造随机序列如下:

方法1: 可以使用字典来统计,以列表中的数据为键,以出现的次数为值

方法2:直接使用 collections 模块下面的 Counter 对象

2. 对某英文文章单词进行统计,找到出现次数最高的单词以及出现的次数

通过上面的练习,我们知道可以用 Counter 来解决

四.根据字典中值的大小,对字典中的项进行排序

比如班级中学生的数学成绩以字典的形式存储:

请按数学成绩从高到底进行排序!

方法1: 利用 zip 将字典转化为元组,再用 sorted 进行排序

方法2: 利用 sorted 函数的 key 参数

五. 在多个字典中找到公共键

实际场景:在足球联赛中,统计每轮比赛都有进球的球员

第一轮: {"C罗": 1, "苏亚雷斯":2, "托雷斯": 1..}

第二轮: {"内马尔": 1, "梅西":2, "姆巴佩": 3..}

第三轮: {"姆巴佩": 2, "C罗":2, "内马尔": 1..}

模拟随机的进球球员和进球数

首先获取字典的 keys,然后取每轮比赛 key 的交集。由于比赛轮次数是不定的,所以使用map来批量操作

然后一直累积取其交集,使用reduce函数

一行代码搞定!

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20190701A0QISB00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券