书写方式
[表达式 for 变量 in 列表] 或者 [表达式 for 变量 in 列表 if 条件]
举个栗子
lst = [x ** 2 for x in range(7)]
print(lst)
#ouput
[0, 1, 4, 9, 16, 25, 36]
x每次循环取值后都执行一次for前面的表达式,并输出执行后的结果。
list1 = [(x, y) for x in range(10) for y in range(10) if x%2==0 if y%2!=0]
#把列表推导式还原出来
list1 = []
for x in range(10):
for y in range(10):
if x%2 == 0:
if y%2 != 0:
list1.append((x, y))