尽管我做了各种尝试,但还是无法让virtualenv工作。我在MAC OS X上使用以下方法安装virtualenv:

pip install virtualenv

并将PATH添加到我的.bash_profile中。每次我尝试运行virtualenv命令时,它都会返回:

-bash: virtualenv: command not found

每次我运行pip install virtualenv时,它都会返回:

Requirement already satisfied (use --upgrade to upgrade): virtualenv in /Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages

我知道在mac中,virtualenv应该正确安装

/usr/local/bin

virtualenv确实安装在/usr/local/bin中,但每当我试图运行virtualenv命令时,都找不到该命令。我还尝试在/usr/local/bin目录下运行virtualenv命令,它给了我相同的结果:

-bash: virtualenv: command not found

这些是我添加到.bash_profile中的路径

export PATH=$PATH:/usr/local/bin
export PATH=$PATH:/usr/local/bin/python
export PATH=$PATH:/Library/Framework/Python.framework/Version/2.7/lib/site-packages

有什么解决办法吗?为什么会这样呢?


当前回答

sudo apt-get install python-virtualenv

其他回答

apt update
apt upgrade
apt install ufw python virtualenv git unzip pv

3个命令和一切工作!

如果你用

pip install virtualenv

现在要使用它,你需要输入以下命令:

python -m virtualenv name_of_your_virtualenv

为了激活它:

.\name_of_your_virtualenv\Scripts\activate

如果激活virtualenv遇到问题,可能是执行策略设置的问题。为了解决这个问题,你应该尝试在命令行中执行这个命令:Set-ExecutionPolicy Unrestricted -Scope Process。这将允许PowerShell运行脚本。

你有这样的错误:

zsh: command not found: virtualenv

因为很可能您在安装virtualenv时没有事先输入sudo。

如果你试图将它添加到/usr/local/bin,这可能会导致语法错误,因为包没有正确地调用/复制:

SyntaxError: invalid syntax

  File "build/bdist.macosx-12.0-x86_64/egg/platformdirs/__main__.py", line 16
    def main() -> None:
               ^

如果你试图在没有sudo权限的情况下通过pip安装virtualenv,你需要首先卸载它:

pip3 uninstall virtualenv

然后使用sudo安装它:

sudo pip3 install virtualenv

接下来你只需要激活env:

virtualenv env 
source env/bin/activate 

如果你使用的是Linux,打开终端,在中间输入virtualenv,然后用tab键自动补全。如果没有自动完成功能,运行以下命令安装virtualenv:

mycomp$sudo apt-get install virtualenv
//if you're already super user.
mycomp#apt-get install virtualenv

你现在可以导航到你想要创建项目的地方,并执行:

myprj$pip3 install virtualenv    
//to install python 3.5 and above  
myprj$virtualenv venv --python=python3.5  
//to activate virtualenv  
(venv)myprj$source venv/bin/activate  
(venv)myprj$deactivate
python3 -m virtualenv virtualenv_name   

or

python -m virtualenv virtualenv_name