深入理解asyncio(三)
这篇文章是《深入理解asyncio》的第三篇,主要包含回调和在asyncio中执行同步代码。
这篇文章是《深入理解asyncio》的第三篇,主要包含回调和在asyncio中执行同步代码。
缓存属性(cached_property)是一个非常常用的功能,很多知名Python项目都自己实现过它。Python 3.8要标准库内置啦
官方REPL也与时俱进,Python3.8支持asyncio REPL啦
在上篇文章已经看到多次用asyncio.gather了,还有另外一个用法是`asyncio.wait`,他们都可以让多个协程并发执行。那为什么提供2个方法呢?他们有什么区别,适用场景是怎么样的呢?其实我之前也是有点困惑,直到我读了asyncio的源码。我们先看2个协程的例子:
这几天看asyncio相关的pycon视频又重温了asyncio 的官方文档,收获很多。之前asyncio被吐槽的一点就是文档写的不好,Python 3.7 时 asyncio 的官方文档被 Andrew Svetlov 以及 Yury Selivanov 等核心开发者重写了,新的版本我觉得已经好很多了。在这里记录一下我对asyncio的一些理解。
我日常开发大概有98%的情况下会使用print来调试, Python3.8添加了新f-strings语法非常有助于编写调试代码!
现在已经是Python 3.8的最后一个alpha版本,接着就是本月底要发布的的3.8.0 beta 1了。按规定,3.8已经不会再添加(修改)功能了,之前非常有争议的PEP 572的实现已经算是很固定了,我们这篇文章就来先尝个鲜。看看这个新的`赋值表达式`语法怎么用,何时用。
从这篇开始我会不定期写一些在实际工作中把项目代码从Python2.7迁移到最新的Python 3.7的经验。 这篇先介绍pyupgrade - 一个修改代码中Python 2语法到最新版本写法的工具
在Python 3.7加入了一个新的模块 contextvars,模块标题说的也非常直接:Context Variables,也就是「上下文变量」...
近 PEP 570被接受了,其实要加的这个`Positional-Only Parameters`原来在内置的C函数上有很多都用到了,但是从Python 3.8开始就可以在Python代码里面使用它了
前天帮一个同学DEBUG一个很奇怪的问题,发现了一个Python 2的hasattr一个不适用场景,和大家分享一下。
Python 3.6新增了f-strings,这个特性叫做`字面量格式化字符串`,F字符串是开头有一个f的字符串文字,Python会计算其中的用大括号包起来的表达式,并将计算后的值替换进去。通过本文,希望和你达成一个共识:如果你的项目或者工作中使用的Python版本已经不小于3.6,f-string格式化是首选方式,不仅在保持功能强大的同时语义上更容易理解,而且性能也有较大的提升
2018 年马上就要结束了,让我们一起见证全世界 Python 的这一年。今年的榜单功能和去年相差不大,如果你看过去年榜单能够体会几个小改动,太忙了,也许明年能改版一下。榜单内容和去年有了一些区...
最近做了一些豆瓣的产品业务代码的 Python 3 迁移相关的准备工作。首先当然是要去改那些基础 Model,除了代码符合 Python3 语法要求,这种基础的、核心的代码也要加上类型注解,结果...
先申明这不是一篇技术文章,只是用叙事的方式讲述我这 2 个礼拜由于结石住院的始末。结石是一种很常见的泌尿系统疾病,我认识的不少人都有过结石,我的感觉里面程序员或者说互联网从业者会更容易得这个病,...
按照 Python3.7 的发布时间表,明天 Python 3.7.0 就发布了,最近各大开源项目都在做 3.7 相关的调整,之后我还会写文章更详细的介绍 Python 3.7 都带来了什么,敬...
一直想写一篇介绍 attrs 的文章,但是最近几个月忙于做 爱湃森课程 实在抽不出空来做,最近感觉找到节奏了,还是稳步向前走了,这个周末就硬挤了一下午写写,要不感觉对不起订阅专栏的同学们。在国内...
前言「如何学习编程」每个人都有自己的答案,在我初学 Python 的时候,我就非常关注大神们的学习方式和成长之路。工作这么些年过来,我发现大家入门和学习的共同点非常统一:读书、看源码、高频率的实...
一起见证全世界 Python 的这一年非常抱歉这个榜单到现在才发出来,主要有 2 个原因:1. 本来准备起用http://ipython.io这个域名;2. 域名备案时间长,造成后续事情都等;3...
这篇文章灵感来源于一个新项目 A short guide on features of Python 3 for data scientists ,这个项目列出来了作者使用 Python 3 用...