# 发展历史

2022年10月18日6分钟阅读

- FormalSciences/ComputerScience
- ProgrammingLanguage/Python
- Python/Philosophy

Python 之父吉多·范罗苏姆（荷兰人 Guido van Rossum）于 1982 年从阿姆斯特丹大学取得了数学和计算机硕士学位。后来他在多个研究机构工作，包括在荷兰阿姆斯特丹的国家数学和计算机科学研究学会，在马里兰州 Gaithersburg 的国家标准暨技术研究院，和维珍尼亚州 Reston 的国家创新研究公司。

20 世纪 80 年代中期，Python 之父 Guido van Rossum 还在 CWI（数学和理论计算机科学领域的研究中心，位于阿姆斯特丹）为 ABC 语言贡献代码。ABC 语言是一个为编程初学者打造的研究项目。ABC 语言给了 Python 之父 Guido 很大影响，**Python 从 ABC 语言中继承了很多东西：比如字符串、列表和字节数列都支持索引、切片排序和拼接操作。**在 CWI 工作了一段时间后，Guido 构思了一门致力于解决问题的编程语言，他觉得现有的编程语言对非计算机专业的人十分不友好。

于是 1989 年 12 月份，为了打发无聊的圣诞节假期，Guido 开始写 Python 的第一个版本。值得一提的是 Python 这个名字的由来，**Python 有蟒蛇的意思，但 Guido 起这个名字完全和蟒蛇没有关系。**当 Guido 在实现 Python 的时候，他还阅读了 Monty Python’s Flying Circus 的剧本，这是来自一部来自 20 世纪 70 年代的 BBC 喜剧。Guido 认为他需要一个简短、独特且略显神秘的名字，因此他决定将该语言称为 Python。

在 1991 年 2 月，范罗苏姆在 alt.sources 上发布了最初代码（标记为版本 0.9.0），这时就已经存在了带继承的类、异常处理、函数和核心数据类型 list、dict、str 等。在这个最初发行中就有了从 Modula-3 引进的模块系统，它的异常模型也类似于 Modula-3。

在 1994 年 1 月 Python 达到了版本 1.0。这个发行版主要新特征是包括了由 Amrit Prem 提供的函数式编程工具 lambda、map、filter 和 reduce。Python 1.4 增加了受 Modula-3 启发的关键字参数，和对复数的内建支持，还包含了采取名字修饰的一种基本形式的数据隐藏。

Python 2.0 于 2000 年 10 月 16 日发布，介入了列表推导式，这是从函数式编程语言 SETL 和 Haskell 中引入的。它还向垃圾收集系统增加了环检测算法，并且支持 Unicode。Python 2.1 支持了嵌套作用域，就像其他静态作用域语言一样。Python 2.2 的重大革新是将 Python 的类型（用 C 写成）和类（用 Python 写成）统一入一个层级，使得 Python 的对象模型成为纯粹和一致的面向对象的模型；还增加了迭代器，受 CLU 和 Icon 启发的生成器和描述器协议。Python 2.4 加入了集合数据类型，和函数修饰器。Python 2.5 加入了 with 语句。

**Python 3.0 于 2008 年 12 月 3 日发布，它对语言做了较大修订而不能完全后向兼容。**Python 3 发行包括了 2 to 3 实用工具，它（至少部分的）自动将 Python 2 代码转换成 Python 3 代码。Python 3 的很多新特性后来也被移植到旧的 Python 2.6/2.7 版本中。

罗苏姆作为 Python 的主要开发者，独自担负这个项目的发展决策者职责，直到 2018 年 7 月 12 日，他宣布从终身仁慈独裁者（BDFL）的职权上“永久休假”。他在 2019 年 1 月至 11 月参与了第一届五人掌控委员会继续领导项目发展。在 2021 年 12 月，活跃的 Python 核心开发者选举 Pablo Galindo Salgado、Petr Viktorin、Thomas Wouters、Gregory P. Smith 和 Brett Cannon 为 2022 年度《掌控委员会》的五位成员来领导这个项目。

> 来源：Python - 维基百科，自由的百科全书
> ；非商业引用，著作权归作者所有。