python生成器函数的特点

python生成器函数的特点
python生成器函数的特点

(推荐操作系统:windows7系统、Python 3.9.1、DELL G3电脑。)

1、特点

生成器函数执行时不执行函数体

next生成器时,从现在的代码到之后的第一个yield弹出值,暂停函数

再次使用next生成器时,从上次暂停处向下执行

如果没有多余的yield,StopIteration就会出现异常,异常的Value是函数的返回值。

2、实例

生成器是惰性求值的。比如我们可以定义一个计数器:

def make_inc():
    def counter():
        x = 0
        while True:
            x += 1
            yield x
    c = counter()
    return lambda: next(c)
 
>>> incr = make_inc()
>>> incr()
Out[9]: 1
>>> incr()
Out[10]: 2

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注