温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

在python中使用yield时需要注意哪些事项

发布时间:2021-04-26 15:35:55 来源:亿速云 阅读:166 作者:Leah 栏目:编程语言

在python中使用yield时需要注意哪些事项?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。

Python的优点有哪些

1、简单易用,与C/C++、Java、C# 等传统语言相比,Python对代码格式的要求没有那么严格;2、Python属于开源的,所有人都可以看到源代码,并且可以被移植在许多平台上使用;3、Python面向对象,能够支持面向过程编程,也支持面向对象编程;4、Python是一种解释性语言,Python写的程序不需要编译成二进制代码,可以直接从源代码运行程序;5、Python功能强大,拥有的模块众多,基本能够实现所有的常见功能。

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时需要注意哪些事项的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注亿速云行业资讯频道,感谢各位的阅读!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI