一、生成式存在的意义
在python中存在内置高级方法:生成式。此方法可生成集合、列表和字典。运用此方法可以大大减少for循环的代码量,真正实现了“一行替十行”的简化作用。是编程中不可或缺的一部分。
二、列表生成式
列表生成式,是Python内置的一种极其强大的生成list的表达式。
1.简单for循环
基本结构:[experssion for item in 序列]
需求:生成一个列表,列表元素分别为[11,22,33…nn]
一般for循环实现:
li = []
for i in range(1,8):
li.append(i**i)
print(li)
简单的用for循环可以实现。
列表生成式实现
print([i**i for i in range(1,8)])
显而易见,运用列表生成式减少了代码量。
2.for嵌套if语句
基本结构:[experssion for item in 序列 if 判断语句]
需求:找出1~10之间得所有得偶数
print([i for i in range(1, 11) if i % 2 == 0])
3.小练习
需求:三种方法找出1~10之间得所有偶数,并且返回一个列表(包含以这个偶数为半径得圆得面积)
方法一:
方法二:
方法三:
三、集合生成式
集合生成式相似于列表生成式。
基本结构:{experssion for item in 序列 if 判断语句}