在MAC上开发python时,希望本身系统自带的python2和安装的python3共存。同时还希望不同的python工程依赖不同的开发环境的情况,或者不想将package安装到全局中。
系统环境:
Mac OS Sierra 10.12.6
系统自带python2.7 python3.6
解决方案:
1、安装python3
brew install python3
用brew或者去网上下载都可以
2、为两个版本分别安装virtualenv
pip3 install virtualenv
sudo pip2 install virtualenv
因为python2.7是系统自带所以需要管理员权限安装
3、使用virtualenv创建虚拟环境在用户目录下创建虚拟环境文件夹
mkdir ~/venvs
cd venvs
用virtualenv指令创建虚拟环境,-p参数表示将原有的/usr/bin/python目录下的系统自带python2.7环境复制到当前文件夹下的venv2文件夹下。--no-site-packages顾名思义是指不带任何第三方包的纯净环境,如不写此参数则默认拷贝原始目录下的所有包到当前虚拟环境下。不知到python安装位置的可以输入命令which python。
which python2
which python3
virtualenv -p /usr/bin/python venv2 --no-site-packages
这里同样的用这个命令创建了名为venv3的python3的虚拟环境,/usr/local/bin/python3 是python3的安装位置。
virtualenv -p /usr/local/bin/python3 venv3
4、激活虚拟环境
source venv2/bin/activate
进入虚拟环境后,命令行的提示符会加入虚拟环境的名称,例如:(venv2)user@machine:~$
5、退出虚拟环境$
deactivate
6、删除虚拟环境
rm -r venv2
该命令会直接删除虚拟环境所在的文件夹venv2