我在Mac上使用MacPorts(https://www.macports.org/)安装了Python 2.7。
安装完成后,我将$ PATH变量设置为包含运行良好的MacPorts目录:
$ echo $PATH
/opt/local/bin:/opt/local/sbin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin
然后我将我想要使用的版本设置为python-selector:
$ sudo port select --set python python27
从此列表中:
$ sudo port select --list python
Password:
Available versions for python:
none
python26-apple
python27 (active)
python27-apple
python34
现在进行测试,如果一切正常,我会这样做并得到奇怪的结果:
$ which python
python is /opt/local/bin/python
python is /usr/bin/python
所以现在我不确定是怎么回事。 Python终端使用正确的版本,到目前为止一切似乎都在工作。但我期待只有一个python版本是活跃的。这不好吗?我能做什么或者必须做什么?
THX!
答案 0 :(得分:1)
我不确定which
来自哪里(请查看which which
)以及您是否隐式将任何标记传递给which
(请与type which
核对),但如果您拨打which -a python
,那就是我期望的输出。
顺便说一句,如果您在键入python
时试图找出shell将要执行的操作,则应使用type python
,这是一个内置的shell。它具有使用shell缓存的优势(因此,在键入/opt/local/bin/python
时,它仍然不会显示python
,因为您还没有运行/usr/bin/python
或打开了hash -r
新shell)并考虑shell别名和函数。
长话短说:看起来很好。