yield —> 生成器
是什么?
- 生成器是一个不断产生值得函数
- 包含yield语句得函数是一个生成器
- 生成器每产生一个值(yield语句),函数就会被冻结,被唤醒后再产生一个值
e.g.
def gen(n):
for i in range(n):
yield i**2
输出结果为:
0 1 4 9 16
为啥要用生成器?
生成器相比一次列出所有内容的优势
- 更节省存储空间
- 响应更迅速
- 使用更灵活
永远只需要一个元素的存储空间
yield —> 生成器
是什么?
e.g.
def gen(n):
for i in range(n):
yield i**2
输出结果为:
0 1 4 9 16
为啥要用生成器?
生成器相比一次列出所有内容的优势
永远只需要一个元素的存储空间