Python之父两年前就已宣布 Python 2.7将于2020年1月1日终止支持,现在这一天已到来,亦即意味着开发者将不会再接收到任何来自Python 2.7的错误修复或安全更新。

为应对这一变化,不少开源项目以及Linux发行版都提前放弃了对Python 2.7的支持,如IPython、NumPy 和Fedora等。毕竟Python 3的功能比Python 2更优秀,而且只使用Python 3比同时维护两个版本的成本更低。

不过即便如此,Python 2和Python 3的不兼容也阻碍了部分用户的升级念想。

升级建议

如果你的关键项目仍在使用Python 2,无需因为Python 2.7终止支持而担心项目的运行受影响。毕竟 PyPI的流行软件包现在大多数仍同时使用Python 2和3。另外,为了使过渡更顺畅,官方移植指南也提供了建议,帮助用户将Python 2代码移植到Python 3。

如果你的项目稳定可靠,且没有任何安全方面的问题,你甚至可以同时拥有Python 2项目和Python 3项目,并在不同的.conda环境中轻松管理它们。

Python 2.7于2020年1月1日正式停止维护,这也意味着Python 2完全退休,现在是Python 3的时代。

PyPI(Python社区开发和共享的软件的存储中心Python Package Index)的大多数流行软件包现在都可以在Python 2和3上运行,并且每天都在增加,Python 2的退休将会影响数百万系统的安全性。

由于Python 2与下一代Python 3的兼容性问题,关于Python 2的退休一直以来都是开发者与各公司关注的重点,因为在2代退休前,需要确保业务都尽可能迁移到3,方便系统后续维护与跟进。目前一些知名项目都已经做好了相应的准备,例如NumPy、Requests和TensorFlow等许多知名项目在 2020年将停止支持2.x,Ubuntu 20.04 LTS开发周期的重要任务是移除Python 2、QEMU结束了对Python 2的支持、Fedora也提出了统一流程让弃用上千Python 2软件包更可控……

不过,虽然开发者与各公司需要尽快从Python 2迁移到Python 3,但是与Windows XP一样,官方宣布其退休后,它还会长时间运行在众多业务中,并且会有官方以外的其它公司出面接手维护。

但不论怎样,还是建议听从官方迁移到Python 3的建议。为了简化过渡,官方迁移指南提供了有关在Python 3中运行Python 2代码的建议。

Python 2,感谢你多年来的忠实服务。

Python 3,现在是你的时代。