asyncio 异步编程全解(Python 从精通到入门 · 08)
单线程扛住上万并发连接,靠的不是魔法,而是一个事件循环 + 一堆会"让路"的协程。这一篇把 await 底下的机制拆开给你看。
本专题为一套完整 Python 系统化学习教程,面向零基础编程新手、转行开发、数据分析爱好者。内容从 Python 基础语法、变量、循环、函数,逐步进阶到面向对象、文件操作、正则、多线程、爬虫、Pandas 数据分析、项目实战。采用「教 - 学 - 练 - 考」模式,搭配可运行代码案例、课后习题与实战项目,避开碎片化学习痛点,循序渐进掌握 Python 核心能力,可用于爬虫开发、数据处理、自动化脚本、后端开发等场景,帮助读者真正实现从入门到精通。
收录 29 篇文章下次更新:10-08 08:00(北京时间),还有 42 篇已排期文章。
单线程扛住上万并发连接,靠的不是魔法,而是一个事件循环 + 一堆会"让路"的协程。这一篇把 await 底下的机制拆开给你看。
知道了 GIL 的脾气,这一篇讲怎么真刀真枪地用线程和进程:锁住共享状态、跑满多核、在进程间传递数据,以及 Windows 上那些会让你踩坑的细节。
GIL 不是 Python 的缺陷,而是 CPython 的一个实现取舍。搞清它保护什么、不保护什么,你才知道该用线程、进程还是协程。
for x in y 背后只有三个约定。生成器把它们包装成语法糖,协程又在生成器上长出来——三者是同一条演化链。
with open(...) 里的 with 到底是什么?它是一套「进入—退出」协议,管的是资源、状态和异常。
装饰器是「接收函数、返回函数」的普通函数。就这一句话,撑起了缓存、重试、鉴权、路由——以及大半个框架世界。
obj.x 这行代码背后有一条严格的查找链。理解它,你就理解了 property、方法绑定、字段验证——以及为什么它们能工作。
class 不只是一段声明,它是一台由 type 驱动的类工厂。看懂这台机器,你就能亲手造类。
大多数人学 Python 的路是错的。这篇序章解释我们要怎么把它走对。