标签:空间 range 就是 一个 生成 冻结 turn end --
‘‘‘
yield关键字的使用:
yield关键字:
yield <-----> 生成器
生成器是一个不断产生值的函数
yield语句的函数就是一个生成器
生成器每次产生一个值(yield语句),函数被冻结,
被唤醒后再产生一个值。
为何要有生成器?
生成器相比一次列出所有内容的优势
1、更节省存储空间
2、响应更迅速
3、使用更灵活
‘‘‘
# 生成器写法
def gen(n):
for i in range(n):
yield i**2
for i in gen(5):
print(i, " ", end="")
# 0 1 4 9 16
# 普通写法
def square(n):
ls = [i**2 for i in range(n)]
return ls
for i in square(5):
print(i, " ", end="")
# 0 1 4 9 16
标签:空间 range 就是 一个 生成 冻结 turn end --
原文地址:https://www.cnblogs.com/pencil2001/p/13197210.html