- 博客(6)
- 资源 (3)
- 收藏
- 关注
原创 异步IO -async_await
python为了将语义变得更加明确,关键字async用于定义原生协程 await后面的是Awaitable函数,await 可以理解为yield from async实现了__await__方法 @types.coroutine 装饰普通生成器实现await方法 # from collections import Awaitable import types async de...
2020-04-13 10:37:40 324
原创 异步IO-yield from 源代码剖析
yield from 处理的事情 1. 子生成器可能是一个迭代器,并不是一个作为协程的生成器,所以他不支持throw 2. 如果子生成器支持throw和close方法,但是在子生成器内部,这两个方法都会抛出异常 3. 调用方让子生成器自己抛出异常 4. 当调用方使用next或者send(None)时,都要在子生成器上调用next()函数,当调用发送非None值时, 才调用子生成器的.se...
2020-04-13 10:12:26 235
原创 异步IO-协程回顾yield from
咱先看看yield和yield form 的区别在哪儿,代码如下,全部传入range(10) def g1(iterable): yield iterable def g2(iterable): yield from iterable for value in g1(range(10)): print(value) for value in g2(range(10...
2020-04-13 09:58:31 193
原创 异步IO-协程深入close,throw
协程的基础已经学了,现在学习其他的一些特性,停止生成器之后再next会异常为StopIteration,close通过GenertorExit接受异常信息.他是基于BaseExceptions的. def gen_func(): try: yield "https://www.baidu.com" except GeneratorExit: # 基于BaseE...
2020-04-13 09:30:51 144
原创 异步IO学习-协程
异步IO是python开发中的一个难点,从理解学习用了很长的时间,很枯燥,但他的效率也是不可否否认的. 要学异步IO肯定避不开协程的学习.我的笔记是根据廖雪峰的写的,可以参考廖雪峰 协程又称为微线程,英文名:coroutine,协程的概念很早提出来,但到了最近几年彩在某些语言lua中广泛应用, 子程序,或者称为函数,在所有的语言中都是层级调用,比如A调用B,B在执行过程中调用C,C执行完毕返...
2020-04-13 09:04:31 237
原创 PyCharm for Mac 快捷键
1、前言 总结一下自己平时常用的PyCharm for Mac快捷键,因为网上经常找到的都是Windows版本,所以当是备忘也好,后续会不定期更新。 2、PyCharm for Mac 快捷键 快捷键 说明 cmd + b 跳转到声明处(cmd加鼠标) cmd + d 在下一行复制本行的内容 cmd [] 光标之前/后的位置 cmd + opt + [] 函数和方法前后的位置 cmd + back...
2020-04-02 10:54:41 341
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人