知行编程网知行编程网  2022-12-06 06:00 知行编程网 隐藏边栏  1 
文章评分 0 次,平均分 0.0
导语: 本文主要介绍了关于python生成器的原理探究的相关知识,包括自动论文生成器 python,以及迭代器 python这些编程知识,希望对大家有参考作用。

探究python生成器原理


本文教程操作环境:windows7系统、Python 3.9.1,DELL G3电脑。



1、概念



生成器是通过使用


yield语句

而不是return语句定义一个普通函数来创建的。如果函数包含至少一个yield语句,它就成为一个生成器函数。yield和return都将从函数返回一些值。函数在执行return时终止,而yield语句暂停函数,保存它的所有状态,然后在后续调用时继续执行。



2、组成



至少有一个

yield语句。



返回一个对象

(迭代器),但不立即开始执行。


记住连续调用之间的局部变量及其状态。


实现迭代协议。



3、原理分析


下面是使用生成器的类似内容。可以发现,调用__iter__()和__next__()都是由

生成器自动处理

的:

# Generator for next power of two.
def NextPowTwo(max_ele):
    n = 0
    while n < max_ele:
        yield 2 * n
        n += 1
    raise StopIteration
 
           
obj = NextPowTwo(20)
print (obj.next())
print (obj.next())
print (obj.next())
print (obj.next())




在对于


学习python的时候,很容易把生成器和其他知识点搞混。其实有一个最简单的判断方法,看你有没有使用yield函数就可以了。




以上就是


探究了python生成器的原理,相信现在可以通过yield来理清生成器的使用了。同时,我们可以发现生成器在自动处理调用方面非常有用。


本文为原创文章,版权归所有,欢迎分享本文,转载请保留出处!

知行编程网
知行编程网 关注:1    粉丝:1
这个人很懒,什么都没写
扫一扫二维码分享