问题
今天用Python创建虚拟环境的时候,突然给我报错了:
Error: Command '['...\\Scripts\\python.exe', '-Im', 'ensurepip', '--upgrade', '--default-pip']' returned non-zero exit status 101.
回到目录你能发现它其实是给你创建了虚拟环境的,但是只创建了一半,在是。Scripts文件夹里会缺文件。
如下图,左边的evn是创建失败的,右边的demo是创建成功的。
解决方法
方法一
创建虚拟环境的时候使用python -m venv --without-pip 虚拟环境名
就可以顺利的创建了。
方法二
重装python,重装的时候选择给本机的所有用户安装。
其他无效方法避雷
- 重装setuptools,无效
- 升级pip,无效
- python -m venv --clear --symlinks evn1,无效
补充
虽然觉得大家都应该知道,但我还是多嘴补充一句:
创建虚拟环境有什么用?就是让你在里边操作的时候,不会影响到你系统中的东西。
但是它同样也产生一个代价,就是它相当于一个新的空白的环境,如果你不加设置的话,它是无法使用你已经装好的东西。比如你本地已经安装过NumPy这个package,但是你无法在你的虚拟环境中使用。
也是有两种解决 方法:
- 可以在创建虚拟环境的时候使用
python -m venv --without-pip --system-site-packages
- 在创建好的虚拟环境目录中找到
pyvenv.cfg
文件,将include-system-site-packages
改为true