使用virtualenv与不同版本的Python

1709

我该如何为指定版本的Python创建虚拟环境?


12
提到你也可以使用virtualenvwrapper来完成这个操作。 - bias
21
值得注意的是,Python 3 中有一个内置的虚拟环境等效工具:venv - naught101
6
在当前环境中切换Python版本而不创建新的环境,是否有可能实现? - Charlie Parker
这个视频是virtualenv文档推荐的,它详细介绍了整个过程的步骤。 - AnandShiva
2
每当我在已创建的虚拟环境中使用sudo安装一些实用程序(如docker-compose)时,它会选择根Python和pip版本(3.6),而不是创建虚拟环境时使用的版本(3.7)。为什么会这样?但是当我在虚拟环境内运行python版本时,它会正确显示(3.7)。 - y_159
这对我有用:py -3.9 -m venv .venv - Paul Beloff
41个回答

2

2
这是一个与虚拟环境有关的错误。 只需升级pip即可解决。 pip install --upgrade virtualenv “Original Answer”翻译成:“最初的回答”。

1

简单:

Linux

virtualenv venv --python=/usr/bin/python3.9

Windows

virtualenv venv --python=C:\Users\username\AppData\Local\Programs\Python\Python\python.exe

1

针对2019年的Debian(debian 9)系统,我发现了一个简单的解决方案,可以在虚拟环境内部解决该问题。

假设虚拟环境是通过以下方式创建的:

python3.7 -m venv myenv

但是它只有 python2python2.7 的版本,而你需要 python3.7 的最新功能。
然后,只需运行以下命令:
(myvenv) $ python3.7 -m venv --upgrade /home/username/path/to/myvenv/

如果您的系统已经安装了Python3.7软件包,将会添加这些软件包。

1

这对我在Windows上使用Python 2安装程序有效:

  1. 步骤1:安装Python 3版本。
  2. 步骤2:为虚拟环境创建一个env文件夹。
  3. 步骤3:c:\Python37\python -m venv c:\path\to\env。

这是我在现有的Python 2安装程序中创建Python 3虚拟环境的方法。


1

是的,您只需要安装另一个版本的Python,并在命令中定义您其他版本的Python的位置,例如:

virtualenv /home/payroll/Documents/env -p /usr/bin/python3


1

惊讶的是,到目前为止没有人提到 conda。我发现这比其他方法要简单得多。假设我有 Python 3.9 和 Python 2.7,并且我正在使用 Python 3.5.4 的项目,我可以使用 conda 命令创建隔离的虚拟环境,而无需下载其他任何东西。

首先使用以下命令查看可用的 Python 版本列表:

conda search "^python$"

使用以下命令为 Python 版本 x.y.z 创建虚拟环境:

conda create -n yourenvname python=x.y.z

使用以下命令激活虚拟环境:

conda activate yourenvname

使用以下命令退出虚拟环境:

conda deactivate

使用以下命令删除虚拟环境:

conda remove -n yourenvname --all


1

仅适用于Windows操作系统

  1. 在电脑上安装特定版本的Python
  2. 进入您想要创建虚拟环境的目录
  3. 在文件资源管理器的位置栏中键入cmd并按回车键
  4. 在cmd中键入->pip install virtualenv
  5. 然后使用virtualenv库创建虚拟环境,方法是在cmd中键入以下命令。 -> virtualenv -p="C:\python的位置\python.exe"

1

UBUNTU 19.04 / 全局 Python 3.7。

这对我有用,使用推荐的 Python 3 开发的 venv,启用了 Python 3.8 环境。

安装 3.8 和 3.8 venv 模块: $ sudo apt install python3.8 python3.8-venv
加上你需要的其他模块

使用你想要在该环境中使用的 Python 版本创建虚拟环境

$ /usr/bin/python3.8 -m venv python38-env

转换到你的虚拟环境中。
$ source python38-env/bin/activate

python -V = python 3.8

1
以下是在Visual Studio Code文件夹中创建虚拟环境的逐步说明: 我使用了管理员模式的Powershell:
1. 我创建了一个VSCode文件夹 - "D:\Code_Python_VE",我想在其中创建虚拟环境。
2. 接下来我输入命令 - "pip3 install virtualenv"。(D:\Code_Python_VE> pip3 install virtualenv) 3. D:\Code_Python_VE> python3 -m venv project_env
4. D:\Code_Python_VE>project_env\Scripts\activate.bat
5. D:\Code_Python_VE> ls - 这将列出一个新目录"project_env"。
6. D:\Code_Python_VE> code . 这将启动Visual Studio Code。确保命令为(code .)。
7. 创建带有以下内容的launch.jason文件:
{
    // Use IntelliSense to learn about possible attributes.
    // Hover to view descriptions of existing attributes.
    // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
    "version": "0.2.0",
    "configurations": [
        {
            "type": "python",
            "request": "launch",
            "name": "Python: Current File (Integrated Terminal 1)",
            "program": "${file}"
        },
        {
            "name": "Python: Current File (Integrated Terminal 2)",
            "type": "python",
            "request": "launch",
            "program": "${file}",
            "console": "integratedTerminal"
        }
    ]
}

(Please search how to go to Debug window and Add new Configuration in VS Code).
  1. 在 Visual Studio Code 中按 F1 键,打开命令面板 - 选择 Python 解释器,然后选择虚拟环境 project_env。
  2. 添加一个包含语句 print("Hello World") 的 test.py 文件。
  3. 运行该程序。
  4. 在 Visual Studio Code 终端中 -
    (project_env) d:\Code_Python_VE>python -m pip install --upgrade
    希望这能帮助到您。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接