我在为Python 3创建的虚拟环境virtualenv
中遇到了一个奇怪的问题。我按照通常的步骤进行了操作:
$ virtualenv --python=/opt/local/bin/python3.3 .py3
$ source .py3/bin/activate
我遇到的问题是当我调用命令
python --version
时,它仍然报告 2.7.5 版本,即使路径看起来已经正确设置了。我的 virtualenv
被创建在路径 /Users/barry.flinn/projects/.py3/bin
中,当我运行 which python
命令时,得到这些结果:$ which python
/Users/barry.flinn/projects/.py3/bin/python
bin文件夹包含以下Python可执行文件:
lrwxr-xr-x 1 barry.flinn obfuscated\Domain Users 9 Sep 23 19:39 python -> python3.3
lrwxr-xr-x 1 barry.flinn obfuscated\Domain Users 9 Sep 23 19:39 python3 -> python3.3
-rwxr-xr-x 1 barry.flinn obfuscated\Domain Users 9100 Sep 23 19:39 python3.3
显然,调用python
应该给我Python 3.3,但它似乎仍然会恢复到系统Python 2.7.5。 当virtualenv
处于活动状态时,我的$PATH
是:
/Users/barry.flinn/projects/.py3/bin:/usr/local/mysql/bin:/opt/local/lib/postgresql92/bin:/opt/local/bin:/opt/local/sbin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/local/go/bin:/usr/local/munki
既然所有的内容看起来都是正确的,我对这里发生了什么感到困惑。
更新:
这个报告是正确的:
$ env python --version
Python 3.3.2
对我来说,这有点令人困惑,更进一步的解释如下:
python
定义了别名? - bogatron~/.bashrc
。感谢你的建议。 - flinnb