这篇文章主要介绍了什么是python生成器? 实现python生成器的方法,具有一定借鉴价值,需要的朋友可以参考下。希望大家阅读完这篇文章后大有收获。下面跟着我一起来了解一下。
生成器,它也会提供一个 __next__() 的方法,功能类似于迭代器。这就相当于一个程序同样可调用内置的 next() 函数来获取生成器的下一个值,还以可使用 for 循环来遍历生成器。
它们两个有相同的地方,当然就会有不同的地方,两者的区别在于,生成器是先定义一个包含 yield 语句的函数,然后通过调用该函数来创建一个生成器。而迭代器通常是先定义一个迭代器类,然后通过创建实例来创建迭代器。
如何让程序变得很优雅?通过Python 使用生成器可以满足这个要求,因为它是一种非常优秀的语法结构。
创建生成器
创建生成器需要两步操作:
第一步:定义一个包含 yield 语句的函数。
第二步:调用第 1 步创建的函数得到生成器。
下面程序使用生成器来定义一个差值递增的数列。程序先定义了一个包含 yield 语句的函数:
def tt(val, step): print("--------函数从这里开始执行------") a = 0 # 遍历0~val for i in range(val): # a添加i*step a += i * step yield a
对于上面的例子,可以知道生成器的方法如何使用,总的来说就是一句话:
外部程序通过 send() 方法发送数据而生成器函数使用 yield 语句接收收据。
关于什么是python生成器? 实现python生成器的方法的相关内容到这里结束了,阅读完之后,相信大家对python生成器都有了一定的了解吧!可以继续关注哦!更多详细的解决方法等着你来学习!
更多python相关文章请访问分类:python
【版权声明】本文图文出自大盘站@dapan.cc,转载请注明出处!
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。