• 技术文章 >Python技术 >Python基础教程

    python coroutine的运行过程

    小妮浅浅小妮浅浅2021-08-19 09:39:07原创2960

    说明

    1、先调用函数获取生成器对象,再调用next方法或send(None)方法打开coroutine。

    2、函数执行到yield位置,返回yield后挂起,把控制流交回主线程。再调用send法时,可以传输数据并激活协程。

    继续执行到最后或下一个yield语句。

    实例

    """
    # BEGIN CORO_AVERAGER_TEST
        >>> coro_avg = averager()  # <1>
        >>> next(coro_avg)  # <2>
        >>> coro_avg.send(10)  # <3>
        10.0
        >>> coro_avg.send(30)
        20.0
        >>> coro_avg.send(5)
        15.0
    # END CORO_AVERAGER_TEST
    """
    def averager():
        total = 0.0
        count = 0
        average = None
        while True:  # <1>
            term = yield average  # <2>
            total += term
            count += 1
            average = total/count

    以上就是python coroutine的运行过程,希望对大家有所帮助。更多Python学习指路:python基础教程

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

    专题推荐:python coroutine
    上一篇:python else在循环语句执行的情况 下一篇:python如何输入数据类型检查

    相关文章推荐

    • python break和continue的比较• python在带参的函数中使用装饰器• python清洗文件数据的方法• python旋转图片和压缩像素的方法• python类的两种属性• python中%格式表达式如何使用• python有哪些匹配替换• python format()的下标匹配• python使用shelve保存变量• python pprint.pformat()函数的使用• python else在循环语句执行的情况

    全部评论我要评论

    © 2021 Python学习网 苏ICP备2021003149号-1

  • 取消发布评论
  • 

    Python学习网