Intermediate Python:一本覆盖进阶话题的开源读物
Intermediate Python:一本覆盖进阶话题的开源读物
yasoob 维护的 Intermediate Python,拿到了 3,899 个 Star:


这是一本开源的 Python 进阶书籍,面向已经掌握基础语法、希望深入探索语言特性的读者。全书在线免费阅读,无需购买。
作者 Yasoob 在开始学 Python 时注意到一个问题:基础入门资料数量很多,但教人学完基础后该往哪走的内容偏少。这本书正是为了解决这个问题而写的。书中的每个话题都是作者当年希望有人能告诉自己「这个值得学」的内容。
这本书的定位很明确:它不是一本从零开始的教程,不重复讲解变量定义、循环结构、条件判断这些入门概念。它的目标是在你已经会写 Python 的前提下,带你打开一些平时接触不到或理解不透的语言角落。
内容分为七个部分。
程序员工具部分讲实际开发中用得上的辅助技能:虚拟环境怎么搭、程序出问题时怎么调试、对象内省有哪些手段。这些属于写代码之外的基本功,但在日常工作中经常用到。
语法部分涵盖 Python 中一些容易忽略但又很实用的语法特性:异常处理机制、for-else 的用法、三元运算符、global 与 return 的细微差别、open 函数的参数、*args 和 **kwargs 的传参规则、上下文管理器的工作原理。这些内容在实际编码中经常出现,但很多入门教材不会专门讲到。
函数式编程部分涉及 enumerate、lambda 表达式、集合数据结构、map 与 filter、列表推导式和字典推导式。这部分帮你用更简洁的方式处理数据转换和迭代任务。
数据结构部分讨论生成器、协程和类的进阶用法。生成器可以帮你处理大规模数据流而不用一次性加载到内存。协程则和异步编程密切相关。
数据类型部分介绍 collections 模块中的专用容器、可变对象与不可变对象的区别、以及 slots 对内存占用和属性访问的影响。理解这些有助于写出更高效的代码。
装饰器部分从装饰器的基本概念讲起,再延伸到函数缓存的实现。装饰器是 Python 中很有特色的机制,学会之后能大幅简化代码结构。
Extras 部分包含一些实用但分散的知识点:单行代码技巧、Python 2 与 3 的兼容写法、以及如何用 C 语言写 Python 扩展来提升性能。
每章的写法比较克制,只给出最小必要信息,不追求面面俱到。作者有意不把内容写得太满,给读者留下自己深入探索的空间。你读完一章后,知道这个话题存在、大致理解它的作用,之后可以根据兴趣自行深挖。
这本书的另一个特点是开放协作。项目托管在开源平台,接受社区的 pull request。如果发现内容可以改进,或者想新增章节,都可以直接提交。目前已有中文、俄文、韩文、葡萄牙文、西班牙文等多个翻译版本,社区活跃度还不错。
书采用 CC BY-NC-SA 4.0 协议发布,非商业用途下可以自由传播和修改。作者也在 Gumroad 上放了一个捐赠版本,如果你觉得内容有帮助,可以选择支持。
如果你已经完成了 Python 入门,正在寻找下一阶段的学习地图,这本书可以作为一个不错的起点。书中的话题列表本身,就是一份经过筛选的进阶学习清单。你可以按顺序通读,也可以挑感兴趣的章节先看。无论是初学者巩固基础,还是有一定经验的开发者查漏补缺,都能找到适合自己的内容。
浙公网安备 33010602011771号