18-生成器不只是省内存(上)-yield的状态机模型与帧暂停📖 文章简介: "生成器省内存"这个说法你肯定听过——不用一次性创建整个列表,惰性生成每个值。但本文重点不是省内存,而是深挖 yield 背后的状态机模型:生成器不是普通函数——它是一个可恢复的帧对象(Frame Object)。每次 yield 暂停时,CPython 保留下当前的局部变量状态和字节码指针,下一次 next() 从暂停点恢复执行。用 gi_frame.f_lasti 追踪字节码执行位置,解释生成器如何挂起和恢复、为什么 return 在生成器里不是结束而是抛 StopIteration