CPython 的内部¶ 本指南介绍 CPython 内部基础知识。它解释了 CPython 源代码的布局。它还解释了解析器、编译器和解释器如何协同工作来运行 Python 代码。最后,它涵盖了垃圾回收器及其如何管理内存。 CPython 源代码 源代码布局 其他参考 解析器指南 摘要 PEG 解析器的工作原理 关键思想 有序选择运算符的后果 语法 语法表达式 左递归 语法中的变量 语法动作 Pegen 如何重新生成解析器 如何重新生成元解析器 语法元素和规则 标记化 记忆化 自动变量 硬关键字和软关键字 错误处理 如何报告语法错误 生成 AST 对象 测试 调试生成的解析器 进行实验 详细模式 参考 编译器设计 字节码解释器 (3.11) 序言 其他来源 引言 代码对象 指令解码 跳转 内联缓存条目 求值栈 错误处理 异常表格式 位置表 异常链接 Python 到 Python 的调用 调用栈 各种变量 其他主题 引入新的字节码 垃圾回收器设计 摘要 内存布局和对象结构 默认构建的 GC 自由线程构建的 GC C API 识别引用循环 为什么移动不可达对象更好 销毁不可达对象 优化:世代 收集最老的世代 优化:重用字段以节省内存 优化:延迟跟踪容器 GC 实现之间的差异