公众号后台回复“图书“,了解更多号主新书内容
作者:黄伟呢
来源:数据分析与统计学之美
在讲述这三个概念之前,首先我们需要对列表、字典、集合三个概念,做一个简单的说明。
列表推导式,在日常编程中发挥着很重要的作用(尤其是利用python做数据清洗的时候),它能够简化我们的代码,极其好用,我这里将它的常见3种用法给大家总结一下。
① 一般形式
语法格式:[ expression for i in iterable ]
x = [1, 3, 5, 7, 9] y = [i**2 for i in x] print(y)结果如下:
语法:[ expression for i in iterable if…]
x = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] y = [i for i in x if i % 2 == 0] print(y)结果如下:
语法:[ expression if...else... for i in iterable]
x = [1, 2, 3, 4, 5, 6] y = ["我是偶数" if i % 2 == 0 else "我是奇数" for i in x] print(y)结果如下:
其实不管是现在要讲述的字典解析式,还是后面要讲述的集合解析式,基本都可以使用列表解析式的3中常规操作,我这里仅仅用下面这一个案例来进行说明。
语法:{ expression for i in iterable }
用法和列表一样,区别就是用 { } 包起来,而且前面的expression是 key:value 的形式。
这里有一份成绩单,记录了每个学生的英语成绩,下面我要筛选出英语成绩及格(大于等于60)的信息。
x = {'张三': 70, '李四': 49,'王五': 67, '赵六': 80,'沈七': 99} y = {k: v for k, v in x.items() if int(v) >= 60} print(y)结果如下:
注意一个概念,集合是不可重复的,集合解析式能够自动实现去重功能。其实这里的用法和上述的字典有点相似,仔细看清楚哦。
语法:{ expression for i in iterable }
用法和字典类似,也是用 { } 包起来,但是前面的expression不再是 key:value 的形式。
x = ["香蕉","橘子","西瓜","香蕉","橘子"] y = {i for i in x} print(y)结果如下:
◆ ◆ ◆ ◆ ◆ 麟哥新书已经在京东上架了,我写了本书:《拿下Offer-数据分析师求职面试指南》,目前京东正在举行100-50活动,大家可以用相当于原价5折的预购价格购买,还是非常划算的: 点击下方小程序即可进入购买页面: 数据森麟公众号的交流群已经建立,许多小伙伴已经加入其中,感谢大家的支持。大家可以在群里交流关于数据分析&数据挖掘的相关内容,还没有加入的小伙伴可以扫描下方管理员二维码,进群前一定要关注公众号奥,关注后让管理员帮忙拉进群,期待大家的加入。 管理员二维码: 猜你喜欢 ● 麟哥拼了!!!亲自出镜推荐自己新书《数据分析师求职面试指南》● 厉害了!麟哥新书登顶京东销量排行榜!● 笑死人不偿命的知乎沙雕问题排行榜 ● 用Python扒出B站那些“惊为天人”的阿婆主!● 你相信逛B站也能学编程吗