小小张说故事
Python 的闭包到底“包”住了什么?拆开 cell 对象看一眼
原创
关注作者
腾讯云
开发者社区
文档
建议反馈
控制台
登录/注册
首页
学习
活动
专区
圈层
工具
MCP广场
文章/答案/技术大牛
搜索
搜索
关闭
发布
小小张说故事
社区首页
>
专栏
>
Python 的闭包到底“包”住了什么?拆开 cell 对象看一眼
Python 的闭包到底“包”住了什么?拆开 cell 对象看一眼
小小张说故事
关注
发布于 2026-10-18 13:57:03
发布于 2026-10-18 13:57:03
136
0
举报
概述
闭包不是把变量复制进来,而是把一个叫 cell 的盒子跟函数绑在一起;循环里全是 2、闭包让大对象延寿、闭包比可调用类还费内存,三个现象全是同一个 cell 对象在起作用。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系
cloudcommunity@tencent.com
删除。
python
目录
Python 的闭包到底"包"住了什么?拆开 cell 对象看一眼
1. 先看一组实验结果:__closure__ 里有什么
2. cell 是"引用"不是"拷贝"
3. 经典坑:循环里的闭包为什么全是 2
4. cell 的隐藏代价:变量延寿
5. 反常识:闭包比可调用类更费内存
6. 字节码层面:三个指令说完全部
7. 实用结论
问题归档
专栏文章
快讯文章归档
关键词归档
开发者手册归档
开发者手册 Section 归档