2016-11-10 95 views
2

简短的问答,MacOS X的怪异蟒蛇

在MAC OS山脉终端,

如果我做的:

whereis python 
/usr/bin/python 

然后,如果我做的: /usr/bin/python它打开蟒蛇2.10

但如果我执行 python它打开python 2.7.8。

我如何知道whereis python 2.7.8以及为什么whereis指向不同于默认的python版本?

+0

你有从MacPorts剩下的'/ opt'目录吗? – dawg

回答

5

您可以运行python并检查sys.executable

>>> import sys 
>>> sys.executable 
'/usr/bin/python' 
7

whereis只在几个标准的地方看起来。使用which -a python获取PATH变量中包含python的目录列表。例如,我的机器

$ whereis bash 
/bin/bash 
$ which -a bash 
/usr/local/bin/bash 
/bin/bash 
$ echo "$PATH" 
/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin 

至于为什么whereis不报告实际运行python上,记下了我的例子,whereis只报告/bin/bash。然而,/usr/local/bin出现较早在我的PATH/bin,因此在提示时单独输入bash运行扫描时发现的第一个PATH。在你的情况下,你可能在你的路径之前出现的目录中有Python 2.7.8,而不是/usr/bin

+0

更新了Q以反映我真正想要做的事 – Dnaiel

+0

您应该搜索或提出一个新问题,而不是将问题修改为任何当前问题发生的情况。这样,答案可以对未来的读者有帮助,而不是变得多余。 – wim

+1

@wim我把新的Q在这里,谢谢http://stackoverflow.com/questions/40537880/change-python-version-in-terminal-and-intellij – Dnaiel