列表解析式
不允许出现else、elif
print(i for i in range(20) if i %2 == 0 if i % 3 == 0)
相当于:
lst4[]
for i in range(20):
if i % 2 ==0:
if i % 3 == 0:
lst4.append(i)
列表解析式进阶
[expr for i in iterable1 for j in iterable2 ]
生成器表达式
语法:列表解析式的中括号换成小括号
返回一个生成器
生成器表达式是按需计算。
列表解析式是立即返回值
走完不再回头,需要再重新生成
转载于:https://blog.51cto.com/13445354/2376533