评估循环、帧、基于堆栈的执行、字节码指令、函数和方法调用、属性查找、异常、生成器、协程、模式匹配、推导式和闭包。
13 items
Python/ceval.c 中的主评估循环、通过计算的 goto 调度操作码以及 eval 断路器机制。
PyFrameObject 和 _PyInterpreterFrame 布局、帧创建、帧堆栈和帧内省。
值堆栈、操作数压入/弹出规则,以及解释器如何维护堆栈深度不变量。
CPython 操作码目录:LOAD/STORE 变体、二进制操作、比较、跳转和调用指令。
CALL 操作码机制、位置和关键字参数处理、*args/**kwargs 解包以及调用开销。
LOAD_METHOD和CALL_METHOD优化,绑定方法对象,以及方法缓存。
LOAD_ATTR 字节码、__getattribute__ 调度、描述符协议和类型版本标记缓存。
异常表、try/ except/finally 字节码模式、异常链和展开协议。
生成器对象内部结构、YIELD_VALUE 和 RESUME 操作码以及帧挂起和恢复机制。
async def、await、SEND 操作码、协程唤醒以及 asyncio 如何与 CPython 的协程机制集成。
匹配/大小写编译为 MATCH_* 操作码、模式语义和解释器中的保护评估。
列表/字典/集合推导式和生成器表达式如何通过隐式迭代编译为嵌套代码对象。
MAKE_CELL、LOAD_DEREF、STORE_DEREF 操作码和捕获封闭范围内变量的 PyCellObject。