在venv内部将Python升级到3.7?

时间:2018-10-29 07:45:55

标签: python flask porting python-3.7 python-venv

如何将Python中的当前venv解释程序升级到v3.7.1。不幸的是,我使用的某些库3.5.2已过时,因此我想切换到3.7.1。

选项1:用于更新我的venv中的解释器。

选项2:是否要使用Python 3.7.1作为解释器来创建新的venv,并部署具有所有依赖项的新项目并重新进行调整?

将Flask应用程序移植到较新的解释器的典型方法是什么?

2 个答案:

答案 0 :(得分:1)

最简单的方法是创建一个新的静脉。

如果您的应用程序中没有requirements.txt文件,现在是时候生成一个文件并将其提交到版本控制软件(Git,Mercurial等)中了。激活旧的venv:

>>> pip freeze >requirements.txt

使用临时名称创建并激活新的虚拟电话,然后:

>>> pip install -r requirements.txt

应与旧版本完全一样设置新版本,给出或接受奇数版本冲突。解决这些冲突,然后重新运行pip install -r,直到没有更多错误为止。

在确定删除原始文件并在Py3.7上重新创建它之前,值得针对这个新的临时venv进行测试。

如果您仍然对重命名venv感兴趣,请在this question中提供更多详细信息,但通常不建议这样做。

答案 1 :(得分:0)

我认为不可能更新现有的virtualenv(您会在互联网上找到某种方法来完成它,但是他们基本上会创建一个新的/安装新的python版本并替换virtualenv中的版本)

我宁愿创建一个新的virtualenv。

还可以通过保存当前的virtualenv来进行迁移,如果在迁移过程中遇到任何问题,则可以回滚。

所以:

  1. 创建一个新的git分支:myproject-python37
  2. 创建一个新的virtualenv
  3. 进行迁移