首先需明確:python
Mac 電腦上自帶有 python
查看默認的 python 版本,打開終端輸入命令 python,便可看到以下內容:
個人系統版本OS X 10.13.2,自帶的Python版本是2.7.10。
其次:bash
Python 2.7.10: /System/Library/Frameworks/Python.framework/Versions/2.7 其中,解釋器在該目錄下的 ./bin/python2.7 Python 2.6.9: /System/Library/Frameworks/Python.framework/Versions/2.6 其中,解釋器在該目錄下的 ./bin/python2.6
Python 3.4.2:/Library/Frameworks/Python.framework/Versions/3.4 其中,解釋器在該目錄下的 ./bin/python3.4 Python 2.7.7:/Library/Frameworks/Python.framework/Versions/2.7 其中,解釋器在該目錄下的 ./bin/python2.7
注意:通常用戶再裝一遍 python 環境的時候,在終端的輸入 python 命令,默認啓動的 python 命令是當前用戶安裝的 python 版本環境(即:系統默認的 py 啓動路徑,由原來的 mac 系統默認的解釋器變爲當前用戶安裝的 py 解釋器)ui
Python 3.4.1: /Users/steven/Anaconda3 (anaconda在安裝時候的自定義路徑) 其中,解釋器在該目錄下的 ./bin/python3.4
Python 2.7.8: /Users/Steven/anaconda 其中,解釋器在該目錄下的 ./bin/python2.7
注意一個小問題(跟本題無關):spa
在命令行下,直接輸入命令行
StevenLiu-MacBookPro:bin steven$ pwd /Users/steven/Anaconda3/bin #在python3的環境變量下 StevenLiu-MacBookPro:bin steven$ ./python #根據當前路徑找解釋器 Python 3.4.1 |Anaconda 2.1.0 (x86_64)|(default, Sep 10 2014, 17:24:09) [GCC 4.2.1 (Apple Inc. build 5577)] on darwin Type "help", "copyright", "credits" or "license" for more information. >>>quit() StevenLiu-MacBookPro:bin steven$ python#若是沒有輸入「./」,則進入的是系統當前默認的python環境 Python 2.7.8 |Anaconda 2.1.0 (x86_64)|(default, Aug 21 2014, 15:21:46) [GCC 4.2.1 (Apple Inc. build 5577)] on darwin Type "help", "copyright", "credits" or "license" for more information. Anaconda is brought to you by Continuum Analytics. # 這裏因爲設置了anaconda中的python解釋器爲默認的python,因此不是 /Library/Frameworks/Python.framework/Versions/2.7
其餘:code
Mac系統自帶的python環境默認啓動路徑在:/usr/bin 用戶安裝的python環境默認啓動路徑在:/usr/local/bin 終端輸入: 「python」命令會執行/usr/local/bin下的「python」——在沒有配置文件改變該默認路徑的條件下。
最終答案(重點):orm
Mac在啓動,會先加載系統配置文件(包括~/.bash_profile ),全部默認的命令的路徑,將會配配置文件(好比:~/.bash_profile)中的路徑覆蓋,而且,是後面覆蓋前面的路徑:例如,在終端輸入「python」,系統會在配置文件中的路徑查找,一直到找到位置(在配置文件中從後向前找):
例如:當前.bash_profile的內容爲:
# Setting PATH for Python 2.7 # The orginal version is saved in .bash_profile.pysave PATH="/Library/Frameworks/Python.framework/Versions/2.7/bin:${PATH}" export PATH # Setting PATH for Python 3.4 # The orginal version is saved in .bash_profile.pysave PATH="/Library/Frameworks/Python.framework/Versions/3.4/bin:${PATH}" export PATH # added by Steven Liu export PATH="/Users/steven/Anaconda3/bin:$PATH" # added by Anaconda 2.1.0 installer export PATH="/Users/steven/anaconda/bin:$PATH" # added by Anaconda3 2.1.0 installer export PATH="/Users/steven/Anaconda3/bin:$PATH" # Setting PATH for Subversion 1.9.0 export PATH="/opt/subversion/bin:$PATH" #export PATH="/usr/bin:$PATH"
根據該腳本,先會去找 /opt/subversion/bin 中,有沒有命名爲 「python」 的可執行文件(或是快捷方式),若是沒有,則往上找,接着找 /Users/steven/Anaconda3/bin ,發現有,就爲當前路徑下的解釋器環境。—— 因此,想設置python的版本,直接把你想添加的路徑export上去,並放在後面。實測有效!blog