当前位置:Gxlcms > Python > Python关键字yield的作用

Python关键字yield的作用

时间:2021-07-01 10:21:17 帮助过:66人阅读

生成器

迭代是处理大量数据的好方法。但是以列表为例,迭代存在两个问题,第一,如果列表中的元素太多了,将大量占用内存。第二,我们有时候只需要使用一次数据,如果用列表把数据全部保存起来,岂不是有些浪费?Python中的生成器就能很好的解决这两个问题。

生成器函数

生成器是一种可以简单有效的创建迭代器的工具。它们像常规函数一样撰写,但是在需要返回数据时使用yield语句。每当对它调用next()函数(有关next函数下面会提及),生成器从它上次停止的地方重新开始(它会记住所有的数据值和上次执行的语句)。下面以实例作为解释:

58753d91e44f805af22b7633da4ede0.png

等价于

0f8b4c71c6ae069e76fb411ef2fcb09.png

9401ca49bd113bbdabe37a47e52498d.png

yield关键字

概括的话就是:生成器内部的代码执行到yield会返回,返回的内容为yield后的表达式。下次再执行生成器的内部代码时将从上次的状态继续开始。通过yield关键字,我们可以很方便的将一个函数修改为生成器。

以上就是Python关键字yield的作用的详细内容,更多请关注Gxl网其它相关文章!

人气教程排行