2015-01-05 63 views
4

我最近從Windows切換到Mac,安裝PyCharm後,我不得不指定一個解釋器。OS X Yosemite上的Python解釋器 - 使用哪一個?

  1. 的Macintosh HD▸USR▸當地▸酒窖▸蟒蛇▸2.7.9▸框架▸Python.framework▸版本▸2.7▸斌
  2. 的Macintosh HD▸系統:在下拉,我可以解釋3選擇▸庫▸框架▸Python.framework▸版本▸2.7▸斌
  3. 的Macintosh HD▸系統▸庫▸框架▸Python.framework▸版本▸2.6▸斌

(其實我本來可以有也版本2.5和2.3在最後一個文件夾中,但是在PyCharm中未顯示的地方)。

但是,如果我在終端類型python然後鍵入

import sys 
print sys.executable 

我得到:

  • /usr/local/opt/python/bin/python2.7
  • 爲了使它更更令人困惑的是,當我在IPython Notebook中輸入相同的東西時(使用ipython notebook從終端運行),我得到:

    1. /usr/bin/python

    問題:

    • 如果我想使用Python 2.7(我有3之間進行選擇),其中之一應該使用?
    • 如何導航這些口譯員(如果我想pip install不同的口譯員)?
    +0

    [超級用戶](http://superuser.com/)或[Apple Stack Exchange](http://apple.stackexchange.com/)將是一個很好的問題,如果這是封閉的。 – jww

    回答

    12

    你真的只有的Python 2.7的安裝,以及一個2.6 Python版本,你可以忽略大部分:

    • /usr/local/Cellar/是用戶安裝的(通過Homebrew)。它會被鏈接到/usr/local/opt目錄結構:

      $ /usr/local/bin/python -c "import sys; print sys.prefix" 
      /usr/local/Cellar/python/2.7.9/Frameworks/Python.framework/Versions/2.7 
      

      /usr/local/opt/python是一個符號鏈接到Cellar目錄:

      $ ls -la /usr/local/opt/python 
      lrwxr-xr-x 1 mj admin 22 Jan 5 18:36 /usr/local/opt/python -> ../Cellar/python/2.7.9 
      

      這種結構可以讓你輕鬆地啓用,並在/usr/local樹禁用的Python無如果您以後需要再次安裝自制Python,則必須完全重新安裝,以及在特定版本之間進行交換。

    • 2.7是當前版本,通過OS X軟件本身使用(並有一些額外的庫安裝可能發生衝突,因爲他們在Python包路徑之前site-packages)。它安裝在/System/Library/Frameworks,但/usr/bin/python/usr/bin/python2.7是相同的Python安裝:

      $ /usr/bin/python -c "import sys; print sys.prefix" 
      /System/Library/Frameworks/Python.framework/Versions/2.7 
      
    • 2.6和其他文件夾是在那裏,需要在以前版本的OS X的特定版本的舊版軟件;蘋果公司似乎已經決定需要2.3或2.5的任何東西都可以在2.6下正常運行(而且大多數情況下它們都是正確的)。

    對於新的軟件開發,請使用2.7系統安裝版本或Homebrew版本;如果您需要修復新的2.7.x版本,後者更容易升級。總是使用virtualenv來安裝額外的軟件包,但是,特別是如果您使用OS X 2.7版本。另請參閱PyCharm文檔中的Creating Virtual Environment

    PyCharm以其他方式讓您配置每個項目使用的解釋器,請參閱Project Interpreter

    IPython是一個Python應用程序,它建立在Python之上。因此它與Python解釋器綁定。哪一個取決於它是如何安裝的。你的是與OS X Python 2.7解釋器綁定的,但你可以也可以爲brew版本安裝(如果爲Python安裝正確安裝,使用pip工具)。

    +0

    謝謝。終端使用的/usr/local/opt/python/bin/python2.7版本怎麼樣?這是我一直使用到現在爲止,我應該切換?如何讓命令'python'啓動一個不同的解釋器? – elgehelge

    +0

    我更新了我的問題,並添加了IPython Notebook的輸出 – elgehelge

    +0

    @elgehelge:'/ usr/local/opt/python/bin/python2.7'是Homebrew Python。 'ipython'是一個Python程序,因此它必須使用python可執行文件運行;你的系統被安裝爲與OS X(或* system *)Python一起運行。 –