结构:==[变量 for 变量 in 可迭代对象]==
1.简单模式
只包含循环,不包含判断筛选
#常规
list_1 = []
for x in range(1,10):
list_1.append(x)
print(list_1)
#推导式
list_2 = [x for x in range(1,10)]
print(list_2)
2.一般模式
包含判断和筛选
#常规
list_3=[]
for x in range(1,10):
if x % 2 ==0:
list_3.append(x*x)
print(list_3)
#推导式
list_4 = [x*x for x in range(1,10) if x % 2 ==0]
print(list_4)
3.变态模式
包含循环嵌套,判断,筛选
#常规
list_5 = [[1,2,3],[4,5,6],[7,8,9]]
list_6 = []
for x in list_5:
for y in x:
if y % 2 ==0:
list_6.append(y*y)
print(list_6)
#推导式
list_7 = [y*y for x in list_5 for y in x if y % 2 == 0 ]
print(list_7)