我已经在我的bash中添加了以下行,但是mkproject不断创建python 2.7文件夹到虚拟环境中,因此我仍然需要使用-p python3,我不想这样做.
export VIRTUALENVWRAPPER_SCRIPT=/usr/local/bin/virtualenvwrapper.sh
export VIRTUALENVWRAPPER_PYTHON=/Library/Frameworks/Python.framework/Versions/3.5/bin/python3
source /usr/local/bin/virtualenvwrapper_lazy.sh
最佳答案
virtualenvwrapper了解VIRTUALENVWRAPPER_VIRTUALENV环境变量,您需要将其设置为适合您正在使用的python版本的virtualenv.例如:
export VIRTUALENVWRAPPER_VIRTUALENV=virtualenv3
这是必需的,因为virtualenvwrapper将virtualenv作为shell脚本执行(不在命令前面添加python2或python3).
通过这种方式,virtualenv脚本使用其shebang(#!)中定义的解释器执行.
大多数Linux发行版提供两个包:virtualenv2和virtualenv3,每个包含一个脚本:
virtualenv2:
#!/usr/bin/python2
import virtualenv
virtualenv.main()
virtualenv3:
#!/usr/bin/python3
import virtualenv
virtualenv.main()
在Mac上,您使用brew进行python安装.因此将virtualenv脚本复制到两个实例中没有任何问题:vritualenv2和virtualenv3并将shebang更改为正确的python版本.
(你需要为每个python版本通过pip安装virtualenv eggs.)