无法在 Windows 10 中激活 Python venv

Sun*_*nny 6 python windows command-prompt python-3.x

python -m venv myenv从命令提示符创建了一个虚拟环境,但我不知道如何激活它。我尝试activate.bat从命令提示符执行,但它没有激活。

换句话说,我没有看到当前路径更改(myenv) C:\Pathname...为表明 myenv 已被激活。当我执行activate.batvenv 时没有激活。

mf.*_*ngs 7

这个线程很旧,但我今天遇到了同样的问题,并找到了一个有效的答案。我已经使用 python 3.6 venv 几个月了,没有出现任何问题,但今天我遇到了一条新的错误消息:

C:\test>python -m venv vm
Error: Command '['C:\\test\\vm\\Scripts\\python.exe', '-Im', 'ensurepip', '--upgrade', '--default-pip']' returned non-zero exit status 1
Run Code Online (Sandbox Code Playgroud)

我在 Stack 和其他资源中寻找答案,但没有找到任何特定于 Windows 10 的内容。(AskUbunto 有一个特定于 Linux 的解决方案)。我确实发现了互联网上散布的面包屑并将其拼凑在一起。

你需要这个Python脚本: https: //bootstrap.pypa.io/get-pip.py

  1. 照常安装虚拟环境,但不使用 pip:

    python -m venv 虚拟 --without-pip

此方法将创建所有必需的文件,包括激活 bat 文件。

  1. 将 get-pip.py 文件复制到 virtual\Scripts 子目录中

  2. cd 进入 Scripts 子目录并“激活”python 注意:cmd 行应命名激活 python 的目录:

    (虚拟)C:\test\virtual\Scripts>

(如果显示(root),则已激活您的核心安装)

  1. 现在执行脚本

    C:\test\virtual\Scripts>python get-pip.py

运行后,我输入:

(virtual) C:\test\virtual\Scripts>pip freeze
Run Code Online (Sandbox Code Playgroud)

生成冻结列表并验证安装是否正确。它应该不返回任何内容,没有错误消息,没有冻结列表。

  1. 然后我安装了 Flask,尝试了 pip freeze 并注意到返回仅适用于 Flask 和依赖文件:

(虚拟) C:\test\virtual\Scripts>pip freeze
click==6.7
Flask==0.12.2
itsdangerous==0.24
Jinja2==2.9.6
MarkupSafe==1.0
Werkzeug==0.12.2