Python 2.X 和 3.X 系列
因为 Python 2.X 和 3.X 的历史故事对本书的内容影响很大,所以我需要提前提一些这方面的事情。
在 2009 年写完本书的第四版时, Python 只是刚刚有两种不同的版本:
- 版本 3.0 是本语言出现的第一个不兼容的变种,一般称为 3.X。
- 2.6 保持了与大量现存 Python 代码的后向兼容性,并且在 2.X 这个系列中是最新的。
虽然 3.X 几乎是同样的语言,但是它和前面的版本运行的代码基本完全不同。它:
-
强制推行了一个 Unicode 的模型,对字符,文件和库都有深远的影响。
-
让迭代器和生成器的作用更广泛,作为更完全功能范式的一部分。
-
强制推行和 types 一起出现的新式的 classes,但更加强大和复杂。
-
改变了许多基本的工具和库,把其它的完全替代和移除。
print 从语句到单独函数的转变,从美感上来说或许是合理的。但是它几乎破坏了每一个已经写好的 Python 程序。不谈战略潜力,3.X 的强制的 Unicode 和类模型,还有无处不在的生成器都会造成不同的编程体验。
虽然许多人认为 Python 3.X 是 Python 的进步和未来,但 Python 2.X 仍然广泛使用,并且将在未来的数年和 Python 3.X 获得并行的支持。大量在使用的 Python 代码都是 2.X 的,向 3.X 的迁移过程看起来发展得比较缓慢。
到如今 2022,Python 3.X 早已经获得了统治地位。目前最新版本是 3.11.0.
Python 2.7.18 在 2020 年 4 月 20 日 发布后,2.X 系列就再没有发布过更新了。
推荐文章: