品易云推流 关闭
文章详情页
文章 > Python基础教程 > python中yield的使用注意

python中yield的使用注意

头像

小妮浅浅

2021-05-10 09:45:294271浏览 · 0收藏 · 0评论

(推荐操作系统: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基础教程

关注

关注公众号,随时随地在线学习

本教程部分素材来源于网络,版权问题联系站长!

底部广告图