Python virtualenv错误错误解释器:没有这样的文件或目录

Python virtualenv错误错误解释器:没有这样的文件或目录,python,virtualenv,Python,Virtualenv,如果我试图创建虚拟环境,我会收到以下错误消息,我不理解:错误的解释器:没有这样的文件或目录。我已经回顾并尝试将其应用于以下诊断步骤 这是我在莫哈韦的第一天,但我不知道这是否是这个问题的一个因素 我在/Users/Wes/Dropbox/Programming/Python/glade_againn 我的计划是在virtualenv/Users/Wes/.virtualenvs/glade_againn 然而,当我尝试使用virtualenv时,我收到了这个错误消息 $ virtualenv --

如果我试图创建虚拟环境,我会收到以下错误消息,我不理解:错误的解释器:没有这样的文件或目录。我已经回顾并尝试将其应用于以下诊断步骤

这是我在莫哈韦的第一天,但我不知道这是否是这个问题的一个因素

我在
/Users/Wes/Dropbox/Programming/Python/glade_againn

我的计划是在virtualenv
/Users/Wes/.virtualenvs/glade_againn

然而,当我尝试使用virtualenv时,我收到了这个错误消息

$ virtualenv --version
-bash: /usr/local/bin/virtualenv: /usr/local/opt/python/bin/python2.7: bad interpreter: No such file or directory
如果我试图用PIP安装virtualenv,我会被告知它已经存在

$ pip install virtualenv
Requirement already satisfied: virtualenv in /usr/local/lib/python2.7/site-packages (15.2.0)
$ 
我目前的道路是

echo $PATH
/Library/Frameworks/Python.framework/Versions/3.6/bin:/opt/local/bin:/opt/local/sbin:/usr/local/opt/postgresql@9.4/bin:/usr/local/Cellar/postgresql/9.5.4_1/bin/psql/:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/opt/X11/bin:/Applications/Wireshark.app/Contents/MacOS:/usr/local/git/bin:/Users/Wes/bin:/sw/bin:/usr/local/bin:/Users/Wes/.sdkman/candidates/groovy/current/bin/
如果您在所有这些目录中搜索pyth*,您将按以下顺序获得此列表

/Library/Frameworks/Python.framework/Versions/3.6/bin/python3
/Library/Frameworks/Python.framework/Versions/3.6/bin/python3-config
/Library/Frameworks/Python.framework/Versions/3.6/bin/python3.6
/Library/Frameworks/Python.framework/Versions/3.6/bin/python3.6-config
/Library/Frameworks/Python.framework/Versions/3.6/bin/python3.6m
/Library/Frameworks/Python.framework/Versions/3.6/bin/python3.6m-config
/opt/local/bin/python2.7
/opt/local/bin/python2.7-config
/opt/local/bin/python3.4
/opt/local/bin/python3.4-config
/opt/local/bin/python3.4m
/opt/local/bin/python3.4m-config
/opt/local/bin/pythonw2.7
/usr/local/bin/python-32
/usr/local/bin/python2-32
/usr/local/bin/python2.7-32
/usr/local/bin/python3
/usr/local/bin/python3-config
/usr/local/bin/python3.6
/usr/local/bin/python3.6-config
/usr/local/bin/python3.6m
/usr/local/bin/python3.6m-config
/usr/local/bin/pythoni
/usr/local/bin/pythoni1
/usr/local/bin/pythonw-32
/usr/local/bin/pythonw2-32
/usr/local/bin/pythonw2.7-32
/usr/bin/python
/usr/bin/python-config
/usr/bin/python2.7
/usr/bin/python2.7-config
/usr/bin/pythonw
/usr/bin/pythonw2.7
/sw/bin/python2.7
/sw/bin/python2.7-config
/usr/local/bin/python-32
/usr/local/bin/python2-32
/usr/local/bin/python2.7-32
/usr/local/bin/python3
/usr/local/bin/python3-config
/usr/local/bin/python3.6
/usr/local/bin/python3.6-config
/usr/local/bin/python3.6m
/usr/local/bin/python3.6m-config
/usr/local/bin/pythoni
/usr/local/bin/pythoni1
/usr/local/bin/pythonw-32
/usr/local/bin/pythonw2-32
/usr/local/bin/pythonw2.7-32

有人对如何让virtualenv重新工作有什么建议吗?

尝试使用此选项重新安装

pip install -U --force-reinstall virtualenv
如果上述解决方案不适用于您
您应该再次创建一个新的virtualenv,因为mojave update

在我的例子中,我正在重命名project和project的文件夹,而该文件夹位于
venv
的位置

因此,在我的例子中,我在以下文件中更改了python解释器的路径:

~/PycharmProjects/myproject/venv/bin/activate*
并将
~/PycharmProjects/myproject/venv/bin/pip*
文件修改为:

#!/home/myuser/PycharmProjects/myproject/venv/bin/python
# -*- coding: utf-8 -*-
import re
import sys
from pip._internal.cli.main import main
if __name__ == '__main__':
    sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0])
    sys.exit(main())
要修改它,我必须使用root权限登录:
sudo su
。sudo vim.tiny venv/bin/pip不允许我编辑文件


我只更改了以
开头的第一行/home…

解决了我的问题:(我的env文件名为
.venv)


在我的例子中,我在MacOS上安装了python3.9,但virtualenv是使用python3.7安装的,在某个时候我卸载了python3.7

$ /usr/local/bin/virtualenv --version
-bash: /usr/local/bin/virtualenv: /usr/local/opt/python/bin/python3.7: bad interpreter: No such file or directory
但是,我的python版本:

$ which python3.9
/usr/local/bin/python3.9
没有多少pip或pip3安装/卸载/安装virtualenv对我有用。 最后,我做了以下工作:

$ python3.9 -m pip install --user virtualenv
Collecting virtualenv
  Using cached virtualenv-20.4.6-py2.py3-none-any.whl (7.2 MB)
<snip>
Successfully installed appdirs-1.4.4 distlib-0.3.1 filelock-3.0.12 virtualenv-20.4.6
$python3.9-mpip安装——用户virtualenv
收集虚拟
使用缓存的virtualenv-20.4.6-py2.py3-none-any.whl(7.2MB)
已成功安装appdirs-1.4.4 distlib-0.3.1 filelock-3.0.12 virtualenv-20.4.6
然后

$ /usr/local/bin/virtualenv --version
virtualenv 20.4.6 from <mypath>
$/usr/local/bin/virtualenv--version
virtualenv 20.4.6来自

是的,这可能会解决它。在我的情况下,错误不知从何而来,并在重新安装后得到解决。不确定这里发生了什么。我还必须
pip安装-U--强制重新安装virtualenvwrapper
$ /usr/local/bin/virtualenv --version
virtualenv 20.4.6 from <mypath>