一句话结论:pickle 存的不是「数据」,而是一段描述「怎么把对象重新造出来」的指令流。反序列化就是照着这段指令执行一遍——所以它能重建循环引用,也能执行你没写过的函数。 本文所有数字均来自本机 C