我为什么不喜欢 black

作者给black的定义是「The Uncompromising Code Formatter」,也就是「不妥协的代码格式化程序」。什么意思呢,一句话: 你要听它的,由black按照它的审美帮助你处理代码格式问题。但我不喜欢里面的一些规则

阅读全文 〉

functools.singledispatchmethod(Python 3.8)

functools模块里面的函数是非常常用和有用的,凡是这个模块新增的内容都是值得了解的。这篇文章将介绍Python 3.8新增的singledispatchmethod。写这篇文章前我还特意搜了一些知名/主流项目、开发者、组织,绝绝大多数都没有用它。那把它放在标准库且是在一个很重要的模块里面的重要意义是什么呢?

阅读全文 〉

深入理解asyncio(二)

在上篇文章已经看到多次用asyncio.gather了,还有另外一个用法是`asyncio.wait`,他们都可以让多个协程并发执行。那为什么提供2个方法呢?他们有什么区别,适用场景是怎么样的呢?其实我之前也是有点困惑,直到我读了asyncio的源码。我们先看2个协程的例子:

阅读全文 〉