为什么virtualenv没有相同的python版本

时间:2013-09-16 04:40:29

标签: python virtualenv macports

我使用macports让我的软件保持最新,在macports我的python版本是2.7.5,我创建了virtualenv,然后检查新创建的虚拟环境的python --version,python版本是2.6.1。基于我的理解,virtualenv应该具有相同的python版本,因为我是从2.7.5创建的。

当我执行哪个python时,我得到了修正位置,这是macports安装其软件包的位置。

~/code]$python --version
Python 2.7.5
~/code]$which python
/opt/local/bin/python

virtualenv有什么不同的python --version会是什么原因。

1 个答案:

答案 0 :(得分:1)

virtualenv是针对系统Python而不是macports版本安装的。要使用Python的macports版本,请将其作为参数传递:

virtualenv --python=/opt/local/bin/python

如果你想使这个永久化,请在你的shell中设置VIRTUALENV_PYTHON变量并将其从macports指向Python:

$ export VIRTUALENV_PYTHON=/opt/local/bin/python
$ virtualenv new_venv

您也可以卸载现有的virtualenv库并从macports安装一个:

port select --list virtualenv
port select --set virtualenv virtualenv27
which virtualenv