1. yield 的基本概念
用于定义生成器函数,与普通函数不同,yield函数返回的是是一个生成器对象,而非结果。
2、yield 与return的区别
- 执行方式:return 立即终止函数,yield 暂停函数
- 内存使用:return 返回完整结果,yield 逐个生成
- 状态保存:return 不保存状态,yield 保存函数状态
- 返回值:return 返回指定值,yield 返回生成器对象
3、样例
python
def simple_generator():
yield 1
yield 2
yield 3
# 使用生成器
gen = simple_generator()
print(next(gen)) # 输出: 1
print(next(gen)) # 输出: 2
print(next(gen)) # 输出: 3