(推荐操作系统:windows7系统、Python 3.9.1、DELL G3电脑。)
1、说明
一旦在函数中使用了yield,它就变成了生成函数。但 yield 不能和 return 共存,并且 yield 只能定义在函数中。当我们调用这个函数时,函数内部的代码不会立即执行,所以函数只是返回一个生成器对象。当我们用for迭代它时,函数中的代码将被执行。
2、实例
python3 新增了 yield from 语法,它相当于 for + yield。比如:
yield from a() # 等同于下面 for i in a(): yield i
拓展:yield 和 return 的区别:
return 的时候这个函数的局部变量都被销毁了;
所有 return 是得到所有结果之后的返回;
yield 是产生了一个可以恢复的函数(生成器),恢复了局部变量;
生成器只有在调用 .next() 时才运行函数生成一个结果。
以上就是python中yield的使用注意,希望能对大家有所帮助。更多Python学习指路:python基础教程