Python 2.7 还是 Python 3(为了速度)?

标签 python

我四处寻找答案,但很多问题似乎已经过时或过时。 Python 3 是否已经更新到比 Python 2.7 快很多了,还是我还是坚持我的可行代码更好?

最佳答案

问题不在于速度——它们要么是相同的速度,要么是 Python 3.x 更快(取决于您查看的基准测试)。更具体地说,Python 2 过去速度更快,但显然,它们现在彼此相提并论(?)。见评论和这个slide deck (向后)。

核心开发人员也在积极致力于优化 Python 3 —— Python 3 的每个新版本都是 faster than the last .您可以通过监视 python-dev mailing list 了解有关优化 Python(以及许多复杂性)的最新建议和想法。 .

相反,许多人过去认为没有更新的原因是因为当 Python 3 出来时,以及之后的几年里,大多数 Python 库都没有更新到可以在 Python 3.x 上运行。不过,值得庆幸的是,今天这种情况得到了极大改善——大多数第 3 方库现在都兼容 Python 3。

Python FAQ包含更多信息。您也可以查看Python Wall of SuperpowersPy3 Readiness了解当前哪些流行的 Python 库与 Python 3 兼容。

更新:(2017 年夏季)

我觉得有必要注意到对 Python 2 的支持是 formally ending in 2020 .

许多第 3 方库也计划效仿——科学生态系统的一个大子集(例如 matplotlib、pandas、ipython)正在计划 dropping support for Python 2 in 2020 , Django 是 dropping support ...如果其他库也这样做,我不会感到惊讶。

因此,如果您有兴趣确保可以在 Python 或您最喜欢的库中使用最新和最强大的功能,那么您应该考虑尽快迁移到 Python 3。

以下是一些将 Python 2 代码转换为 3 代码的指南:

关于Python 2.7 还是 Python 3(为了速度)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10901161/

相关文章:

Python 夏娃 0.8 : how to perform a $geowithin with a $centerSphere?

python - 我怎样才能发现类的重新定义?

python - IO错误 : [Errno 0] Error when running python code using visual studio code

python 列表理解和 extend()

Python 使用请求时错误的 SSL 版本

python - OpenCV Python : Convert RGB to YCrCb

python - 当存在 unicode 数据时,Json 解码器不一致

python - 从多个链接中获取数据,同时存储在 Scrapy 中的一个项目中

python - Django QuerySet .defer() 问题 - 错误或功能?

python - Pytest 不收集静态方法