内容纲要
推导式comprehensions(又称解析式),是Python的一种独有特性。推导式是可以从一个数据序列构建另一个新的数据序列的结构体。 共有三种推导,在Python2和3中都有支持:
列表(list)推导式
字典(dict)推导式
集合(set)推导式
1、列表推导式
1.1 使用[]生成列表
基本格式:[表达式 for 变量 in 列表] 或者 [表达式 for 变量 in 列表 if 条件]
列表推导式总共有两种形式:
- [x for x in data if condition]
此处if主要起条件判断作用,data数据中只有满足if条件的才会被留下,最后统一生成为一个数据列表 - [exp1 if condition else exp2 for x in data]
此处if…else主要起赋值作用,当data中的数据满足if条件时将其做exp1处理,否则按照exp2处理,最后统一生成为一个数据列表
1.2 使用()生成generator
将俩表推导式的[]改成()即可得到生成器。
2、字典推导式
字典推导和列表推导的使用方法是类似的,只是中括号该改成大括号。
3、集合推导式
它们跟列表推导式也是类似的。 唯一的区别在于它使用大括号{}。
附录:难点表达式理解
[x in list_A for x in list_B]
返回的是bool类型的列表,比如
则返回结果为
留言