Python 2.7 于 2020 年 1 月终止,甚至在大量软件迁移到 Python 3 之前。但是,我参加聚会有点晚了,并在 2020 年末开始从事这样一个项目。所以在这篇博客中,我将尝试总结我们遵循的步骤以及一些可能对开发人员有帮助的技巧谁将来可能需要迁移 Python 项目。
在我们开始之前,我还要添加一个小免责声明,我不会涉及 Python 2 和 3 的区别,互联网上有很多相同的内容,所以请随时查看.
我们将讨论我们不担心 Python2 兼容性的迁移,因为我们就是这种情况。不过,我也会分享一些 py2&3 兼容迁移的参考链接。因此,让我们开始吧,看看在迁移到 Python 3 时可以遵循哪些步骤。我们从 Python 2.7 迁移到 3.7,但最新版本是 3.9,所以如果您有足够的信心选择最新的 Python 版本,您也可以这样做。
如果对Python有兴趣,想了解更多的Python以及AIoT知识,解决测试问题,以及入门指导,帮你解决学习Python中遇到的困惑,我们这里有技术高手。如果你正在找工作或者刚刚学校出来,又或者已经工作但是经常觉得难点很多,觉得自己Python方面学的不够精想要继续学习的,想转行怕学不会的, 都可以加入我们,可领取最新Python大厂面试资料和Python爬虫、人工智能、学习资料!微信公众号【Python大本营】等你来玩奥~
迁移步骤
- 第一步是了解 Python 2 和 3 之间的一些根本区别,这将有助于解决问题
- 检查代码的代码覆盖率并确保我们有不错的测试覆盖率。代码覆盖率越高,迁移代码就越容易
- 为 Python2.7 和 Python 3.7+ 版本设置虚拟环境
Python2 的虚拟环境
<span style="color:var(--syntax-text-color)"><span style="color:var(--syntax-text-color)"><code>python2.7 <span style="color:var(--syntax-error-color)">-m</span> pip <span style="color:var(--syntax-text-color)">install </span>virtualenv
python2.7 <span style="color:var(--syntax-error-color)">-m</span> virtualenv py27
<span style="color:var(--syntax-text-color)">source </span>py27/bin/activate
</code></span></span>
Python3 的虚拟环境
<span style="color:var(--syntax-text-color)"><span style="color:var(--syntax-text-color)"><code>python3.7 <span style="color:var(--syntax-error-color)">-m</span> virtualenv py3
<span style="color:var(--syntax-text-color)">source </span>py3/bin/activate
</code></span></span>
- 此外,请为 Python 3 代码库创建一个单独的分支并并行维护这两个版本,除非完成完整迁移
-
下一步应该是找出与 Python 3 兼容的代码库的依赖关系,为此我建议使用以下工具