设置 python 3.7 虚拟环境时出现问题
Problems setting up a python 3.7 virtual environment
我正在尝试在我的本地计算机上创建一个新的 python 3.7 虚拟环境 运行 Windows 8. 我有 python 版本 3.6、3.7 和 3.8安装。它们的 exe 文件分别命名为 python36、python37 和 python。所有三个都正确添加到 PATH 因为我可以输入每个解释器。
在我的新项目目录中,我尝试使用 python37 -m venv env
创建一个虚拟环境。它产生了一个错误:Error: [WinError 2] The system cannot find the file specified
,但它仍然创建了目录。但是 Scripts 子文件夹是空的,除了 pythonw.exe
.
在 this question 中有人建议做 python37 -m venv env --without-pip
。当我尝试这样做时,创建了 activation/deactivation 脚本,但虚拟环境使用的是 python 3.8.
据我了解,venv 将使用您用来调用它的任何 python exe 创建虚拟环境,所以我不明白这是怎么发生的。我验证了 python37
指向正确的地方 where python37
,甚至可以进入 3.7 交互式解释器。
首先在任何驱动器上创建文件夹,然后转到该文件夹并使用 pip 安装 virtualenv 包。
pip install virtualenv
然后创建您的虚拟环境。
mkvirtualenv myvirtualenv
然后使用下面的命令在 windows.
中激活 virtualenv
myvirtualenv\Scripts\activate
之后就可以在当前虚拟环境中安装相关包了。
The Python Standard Library for Creating Virtual Environment
问题是我重命名了 python exe。我不知道到底出了什么问题,但大概在某个时候 venv
试图找到 python.exe
并被名字抛弃了。
将它们改回 python.exe
并根据位置区分版本解决了问题。
编辑:
查看 Eryk 的评论了解更多详情。
我正在尝试在我的本地计算机上创建一个新的 python 3.7 虚拟环境 运行 Windows 8. 我有 python 版本 3.6、3.7 和 3.8安装。它们的 exe 文件分别命名为 python36、python37 和 python。所有三个都正确添加到 PATH 因为我可以输入每个解释器。
在我的新项目目录中,我尝试使用 python37 -m venv env
创建一个虚拟环境。它产生了一个错误:Error: [WinError 2] The system cannot find the file specified
,但它仍然创建了目录。但是 Scripts 子文件夹是空的,除了 pythonw.exe
.
在 this question 中有人建议做 python37 -m venv env --without-pip
。当我尝试这样做时,创建了 activation/deactivation 脚本,但虚拟环境使用的是 python 3.8.
据我了解,venv 将使用您用来调用它的任何 python exe 创建虚拟环境,所以我不明白这是怎么发生的。我验证了 python37
指向正确的地方 where python37
,甚至可以进入 3.7 交互式解释器。
首先在任何驱动器上创建文件夹,然后转到该文件夹并使用 pip 安装 virtualenv 包。
pip install virtualenv
然后创建您的虚拟环境。
mkvirtualenv myvirtualenv
然后使用下面的命令在 windows.
中激活 virtualenvmyvirtualenv\Scripts\activate
之后就可以在当前虚拟环境中安装相关包了。
The Python Standard Library for Creating Virtual Environment
问题是我重命名了 python exe。我不知道到底出了什么问题,但大概在某个时候 venv
试图找到 python.exe
并被名字抛弃了。
将它们改回 python.exe
并根据位置区分版本解决了问题。
编辑: 查看 Eryk 的评论了解更多详情。