技术笔记

Python 对象的背包与紧身衣:从 __dict__ 到 __slots__

凌晨两点,你写了两个小时的数据处理脚本,终于把一百万个用户对象加载进内存,准备跑分析。结果还没到第一个循环,内存就飙到 4GB,进程被系统 OOM 杀掉了。 更气人的是,对象本身就两个字段——user_id 和 timestamp。两个 int,一百万次,怎么算也就几十 MB。剩下的内存去哪了? 把锅甩给”Python 慢”之前,先问一个更具体的问题:一个 Python 实例,到底把它的...