流畅的Python读书笔记 --- 第十六章 协程

近期在读“流畅的Python”这本书,想把自己的读书笔记分享给大家,希望能帮到也对这本书感兴趣但是没时间看的各位。(文章中大部分的话和图片摘录总结自“流畅的Python”一书,以及python官方网站)

章节概述::介绍了Python中由生成器演变出来的协程。
章节结构:

  • 生成器 to 协程
  • 协程
  • 终止协程和异常处理
  • 协程返回值

具体内容:

  • 生成器 to 协程

协程使用生成器函数定义:定义体中有yield关键字

  • 预激协程

在调用send前线调用next函数,也可以通过一个预激协程的装饰器。
https://github.com/fluentpyth...

  • 终止协程和异常处理

终止协程方法一:发送一个哨符值,让协程报错退出:my_coro.send(StopIteration)
终止协程方法二:显示的把异常发送给携程,通过generator.throw(exception) / generator.close

  • 协程返回值

很多携程不会产出值,可能协程退出才会最后返回一个值。

  • Yield from

yield from后面加上可迭代对象,他可以把可迭代对象里的每个元素一个一个的yield出来,对比yield来说代码更加简洁,结构更加清晰。
yield from后面加上一个生成器后,就实现了生成的嵌套。

你可能感兴趣的:(python,读书笔记)