2017-08-12 100 views
3

我知道,這個問題已被問及許多次。但是,我仍然無法擺脫這一點。我在我的Mac上發現了以下信息。如何在mac上爲2.7設置python路徑?

cd /Library/Frameworks/Python.framework/Versions/ 
Current -> 2.7 
3.6 

whereispython 
/usr/bin/python 

which python 
/usr/bin/python 

which -a python 
/usr/bin/python 
/usr/bin/python 

python 
Python 2.7.10 (default) 
[GCC 4.2.1 Compatible Apple LLVM 7.0.0 (clang-700.0.59.5)] on darwin 
Type "help", "copyright", "credits" or "license" for more information. 

即使這樣,當我編輯~/.bash_profile如下

# Setting PATH for Python 2.7 
# The original version is saved in .bash_profile.pysave 
PATH="/Library/Frameworks/Python.framework/Versions/2.7/bin:${PATH}" 
export PATH 

#PYTHONPATH 
PYTHONPATH="${PYTHONPATH}:/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python" 
export PYTHONPATH 

然後,source ~/.bash-profile。在重新啓動我的終端後,仍然可以看到/usr/bin/python而不是在執行which python時指向/Library/../Python2.7

我卸載Python和重新安裝"pip install python" 還有,我能看到下/System/Library/Frameworks/Python.framework/Versions

2.6 
2.7 
2.5 -> 2.6 
2.3 -> 2.6 
Current -> 2.7 

Python安裝我不知道有什麼可以在這裏失蹤。我如何設置/添加mac中的python路徑?請幫助我理解並克服這一點。你能幫我嗎?

參考Adding python path to mac osx

+0

爲什麼不使用類似pyenv的東西? – aristotll

+1

類型python2.7;或'ls/usr/bin | grep python' – AK47

回答

2

如果您已經安裝在計算機上的Python的多個版本應該是在/ usr/bin中多個二進制文件爲每一個

MacBook-Pro:~ ak47$ ls /usr/bin | grep python 
> python 
> python2.6 
> python2.7 

您可以通過更改訪問每個不同的解釋觸發

「顯式優於隱式」

MacBook-Pro:~ ak47$ python --version 
> Python 2.7.10 

MacBook-Pro:~ ak47$ python2.6 --version 
> Python 2.6.9 

MacBook-Pro:~ ak47$ python2.7 --version 
> Python 2.7.10 

MacBook-Pro:~ ak47$ python3 --version 
> Python 3.5.2 
+1

另外,我強烈建議不要在使用多個版本的python時使用PYTHONPATH變量,因爲python會爲所有版本使用相同的變量。使用'sitecustomize.py'和'usercustomize.py'機制來操作'sys.path'。 – Gribouillis

1

通過brew安裝。 brew install python2 or python3。 brew會自動設置mac中的python路徑。

2

事實上,如前所述,使用Brew安裝最新版本的python可能是最好的處理方式,但請注意,從Python 2.7.13 Homebrew開始並不會將該版本的Python添加到您的自動路徑。它警告你必須在你的.bash_profile中添加「export PATH =」/ usr/local/opt/python/libexec/bin:$ PATH「」。做到這一點,一切都會按預期工作。