列表推导式
[表达式 for item in 可迭代对象]
{表达式 for item in 可迭代对象 if 条件判断}
[x for x in range(1,5)]
生成:[1,2,3,4]
[x*2 for x in range(1,5)]
生成[2,4,6,8]
[x*2 for x in range(1,20) if x%2==0 ]
生成:[10,20,30]
字典推导式
{key : value for 表达式 in 可迭代对象}
类似于列表推导式,字典推导式也可以增加 if 条件判断,多个for循环。
.count(c)统计c有多少个
集合推导式
集合推导式生成集合,和列表推导式的语法格式类似:
{表达式 for item in 可迭代对象}
或者:{表达式 for item in 可迭代对象 if 条件判断}
{x for x in range(1,100)}
结果:{1,2,3,4,5,到99}
可以在后面加个限定if
{x for x in range(1,100)if x%9==0}
可以被9整除
生成器推导式(生成元组)
一个生成器只能运行一次