python - 在 venv 中将 Python 升级到 3.7?

标签 python flask porting python-3.7 python-venv

这个问题在这里已经有了答案:





Can existing virtualenv be upgraded gracefully?

(5 个回答)


2年前关闭。




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

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

选项 2:是使用 Python 3.7.1 作为解释器创建一个新的 venv 并重新部署整个项目及其所有依赖项和调整?

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

最佳答案

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

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

>>> pip freeze >requirements.txt

使用所需的 python 版本创建新的 venv 并为其命名:
>>> virtualenv -p python3.7 venvname

激活 venv:
>>> source venvname/bin/activate

然后安装您的要求:
>>> pip install -r requirements.txt

应该像旧的一样设置新的 venv,给出或接受奇怪的版本冲突。修复这些冲突并重新运行 pip install -r直到不再有错误为止。

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

一般来说,如果您对重命名 venv 感兴趣,可以在 this question 中找到更多详细信息。但不建议这样做。

关于python - 在 venv 中将 Python 升级到 3.7?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53040930/

相关文章:

python - str 可以引发异常吗?

python - 如何打印特定的json列表项?

python - 如何将字符串与未形成的字符串分开

python - 如何将变量传递到 FLASK 中的另一条路线

c++ - 找出一组整数的多项式

javascript - 将 jsx 转换为 tsx?

python - 如何在python程序中获取linux用户名

html - 数据库错误: The first argument to execute must be a string or unicode query in python

python - 如何通过 nginx/uwsgi 反向代理启动我的 Flask 应用程序

python - 将 MATLAB 函数移植到 Scilab。我如何使用符号?