我在命令提示符下创建了一个带python -m venv myenv
的虚拟环境,但我不知道如何激活它。我尝试从命令提示符执行activate.bat
但它没有激活。
换句话说,我没有看到当前路径更改为(myenv) C:\Pathname...
以指示myenv已被激活。当我执行activate.bat
时,venv未被激活。
答案 0 :(得分:3)
这个线程很老但我今天遇到了同样的问题并找到了合适的答案。我已经使用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
我搜索了Stack和其他资源以获得答案,但没有找到任何特定于Windows 10的内容。(AskUbunto有一个特定于Linux的解决方案)。我确实在InterWebs上发现了面包屑并将它拼凑在一起。
你需要这个python脚本:https://bootstrap.pypa.io/get-pip.py
像往常一样安装虚拟环境但没有pip:
python -m venv virtual --without-pip
此方法将创建所有必需的文件,包括激活bat文件。
将get-pip.py文件复制到virtual \ Scripts子目录
cd进入Scripts子目录并“激活”python注意:cmd行应该命名激活python的目录:
(虚拟)C:\ test \ virtual \ Scripts>
(如果它说(root),它激活你的核心安装)
现在执行脚本
C:\ test \ virtual \ Scripts> python get-pip.py
一旦运行,我输入:
(virtual) C:\test\virtual\Scripts>pip freeze
生成冻结列表并验证正确安装。它应该什么也不返回,没有错误消息,没有冻结列表。
(虚拟)C:\ test \ virtual \ Scripts> pip冻结
点击== 6.7
瓶== 0.12.2
itsdangerous == 0.24
Jinja2的== 2.9.6
MarkupSafe == 1.0
WERKZEUG == 0.12.2