【导语近日波兰开发者 Maciej Kowalski 在个人博客整理了一系列 Python 的“怪异”设计这些特性反映了 Python“一切皆对象”的核心哲学同时也揭示了这门 30 多年成熟语言的诸多冷知识。】Python比俄罗斯联邦“年长”的编程语言Python 诞生于 1991 年 2 月 20 日而苏联解体发生在同年 12 月 26 日这意味着 Python 实际上比俄罗斯联邦还要“年长”近 10 个月。尽管近年来 Python 因人工智能和数据科学的爆发而风靡全球但它本质上是一门有着 30 多年历史的成熟语言。bool 竟是 int 的子类多态设计显优雅在 Python 中bool 是 int 的子类查看 CPython 的 builtins.pyi 定义可看到 class bool(int) 这样的继承关系。因此 True True 的结果是 2而非报错这与 Java 等语言形成鲜明对比。Python 的设计者认为这种多态更加优雅还允许开发者通过继承 int 来创建自定义数值类型。单例对象与小整数缓存减少内存开销Python 中的 None、True、False 都是单例对象在解释器启动时就被创建垃圾回收器永远不会触碰它们。此外CPython 会预先分配 -5 到 256 之间的整数对象这是经典的 interning 模式可显著减少内存分配开销。循环垃圾回收陷阱与 GIL 难题待解Python 的循环垃圾回收是可选的只需四行代码就能人为制造内存泄漏。同时由于 GIL 的存在Python 的多线程程序在任意时刻只有一个线程在执行 Python 字节码。不过Python 3.13 已引入实验性的自由线程模式未来 GIL 有望被彻底移除。编辑观点Python 这些“怪异”设计背后是其独特的语言哲学虽有一些使用陷阱但也展现出强大的灵活性和扩展性未来发展值得期待。