>在 Python 3.9 都已经进入 dev 版本的 2020 年,Python 2 终于要和咱们告别了。html
Python 2 第一个版本发布于 2000 年 10 月 16 日,到今年正好是第 20 个年头。而 Python 3 发布于 2008 年 12 月 3 日,但因为 3.0 版本在底层进行了大量重构(主要是 Unicode 与 C API 的改动),没法完整兼容 Python 2,所以官方并无中止对 Python 2 的维护。python
今后 2 与 3 依然都在发布新版本,官方想经过平滑的方式过渡到新版本。然而并非全部的社区贡献者有这种精力去同时维护两个版本,许多开源库它们至今都停更在 2.X 版本。编程
两版本共存的日子,一晃就是 11 年。安全
好在 Python 3 更新了愈来愈多独有的特性与性能优化,加上社区的不断努力推进,在近几年爆发增加的初学者当中,大部分都被推荐使用了 3.X 版本做为入门版本,3 版本在近几年才占据了主导。性能优化
终于 Python 核心开发团队对外宣布,将在 2020 年逐步中止对 Python 2 的支持,但并无给出具体时间。微信
2017 年 NumPy 正式宣布将在 2019 年 1 月 1 日中止支持 Python 2。以后 pandas 与 Jupyter notebook 等开发团队纷纷宣布即将中止支持 2.X 版本。工具
2018 年 Python 创始人 Guido van Rossum 在官方邮件组表示,他们将于 2020 年 1 月 1 日中止对 Python 2.7 的支持,这也是 2.X 最后一个版本。性能
他在邮件写道: >不要玩文字游戏了!Python 2.7 的 EOL(停用)日期是 2020 年 1 月 1 日,接下来,将不会有任何更新,也不会再有源码安全补丁。在此日期以后,Python 核心开发者、PSF 和 python.org 将不会提供任何支持。若是你还想得到支持,那得付相关商业费用。固然,它是开源的,因此咱们也欢迎你们 fork。
咱们最初决定 2015 年为 EOL 日期,而后推迟到 2020 年,给你们的时间已经很充足了,核心开发者也辛苦过久了。此外,坦诚地说,我并不以为停用 Python 2.7 是件坏事。优化
不过中止更新并不会有多大的影响,由于根据 JetBrains 最新的 Python 开发者报告显示,近九成的开发者已经使用 Python 3 版本。ui
相信在 2020 年使用 Python 2 的开发者将低于 5%。
若是你有代码想迁移 Python 3,别忘了尝试使用官方提供的 2to3 迁移工具。
另外 3.9 版本已经有 dev 版本了,留给 Python 3 的版本号也到头了(除非使用两位数),后续 Python 怎么走,我们拭目以待。
最后祝各位读者新年快乐!
本文属于原创,首发于微信公众号「面向人生编程」,如需转载请后台留言。