列表生成式和生成器

**列表生成式一定要在两端加上[  ]

   例子:

l=[m+n for m in [1,2,3  ] for n in [2,3,4] ]

**列表生成式2个变量的for循环的结果数量是相乘的

   假设m列表有3个变量,n列表有2个变量, 最终就有2*3=6个结果

   例子:

l=[m+n for m in [1,2] for n in [2,3,4] ]
print(l)

结果:       [3, 4, 5, 4, 5, 6]

**()替代[] 列表生成式就变成了生成器,比如 kk=(m+n for m in [1,2] for n in [2,3,4] )

   print(kk)  输出的是一个对象

   next(kk) 输出下一个满足表达式的值 

   生成器的作用:惰性生成数据,只有需要的时候才生成数据,节省时间和空间

   

猜你喜欢

转载自542255641.iteye.com/blog/2398906