簡體   English   中英

在mac上安裝Python 3.3

[英]Installing Python 3.3 on mac

我使用了http://www.python.org/download中的安裝程序。 安裝似乎成功,它刪除了我的Applications目錄中的Python 3.3文件夾。 我運行了它包含的“Update Shell Profile.command”腳本,它將/Library/Frameworks/Python.framework/Versions/3.3/添加到我的路徑中。 然而該目錄中的Python版本似乎是2.7.5。

/Library/Frameworks/Python.framework/Versions/3.3  ls
Headers   Python    Resources bin       include   lib       share
/Library/Frameworks/Python.framework/Versions/3.3  Python --version
Python 2.7.5

另外, ls /usr/bin | grep python ls /usr/bin | grep python顯示:

python
python-config
python2.5
python2.5-config
python2.6
python2.6-config
python2.7
python2.7-config
pythonw
pythonw2.5
pythonw2.6
pythonw2.7

我錯過了什么?

這里有很多問題。


首先,您不應該運行框架的可執行文件Python 框架可執行文件並不意味着可以運行,而這恰好只是巧合而已。

具有要運行的程序的框架將它們放在某個bin目錄中 - 在框架之外(如/usr/local/bin )或在其中(如/Library/Frameworks/Foo.framework/Versions/XY/bin )。 默認情況下,Python 3.3執行后者。

bin目錄中的程序都是小寫的,不是大寫的,所以沒有Python可以運行。


接下來,在Mac上以及除Windows之外的世界上幾乎所有其他平台上,當前工作目錄不是PATH一部分。 因此,當您鍵入Python --version ,會在PATH上的某處找到Python 您碰巧在當前目錄中擁有該名稱的可執行文件這一事實並不意味着什么(除了它讓您感到困惑)。 如果你真的想要運行那個文件(但是你真的沒有),你必須編寫./Python


此外,我們實在沒有很好的理由cd到擺在首位的框架目錄。 當然,你可以從那里運行你想要的文件,使用適當的相對路徑名: bin/python3 ,但你不想這樣做。


接下來,在安裝Python 3.3之前,您可能正在使用已運行的shell。 Update Shell Profile.command腳本可用於將Python 3.3添加到PATH以用於所有將來的shell,或者使用該PATH生成新的shell,但無論哪種方式它都不會影響任何現有的 shell。 要解決這個問題,你只需要啟動一個新的shell。


下一個:

ls /usr/bin | grep python ls /usr/bin | grep python顯示:

/usr/bin目錄僅適用於屬於OS的程序。 您自己安裝的程序將放在/usr/local/bin或PATH上的其他位置。 Python安裝程序有一個選項(雖然它可能是隱藏的,我不記得了......)將啟動器放在/usr/local/bin 它還有一個選項 - 您選擇 - 將其框架bin目錄放到PATH 但不管怎樣,它永遠不會在/usr/bin放任何東西。


最后,即使在安裝Python 3.3之后,默認的python仍然是2.7。 python3python3.3將是3.3,但pythonpython2.7將是2.7。 有關基本原理,請參閱PEP 394 - 類Unix系統上的“python”命令 但是簡短的版本是,各種代碼依賴於Python 2.7並且與可能安裝在系統上的3.3不兼容,並且您不希望所有代碼都停止工作。


所以,把它們放在一起:

  • 在Terminal.app中創建一個新選項卡或窗口。
  • 輸入python3 --version

您可能需要考慮使用virtualenv:

$ /Library/Frameworks/Python.framework/Versions/3.3/bin/python3 -m venv ~/myvenv
$ source ~/myvenv/bin/activate
(myvenv) $ curl https://bootstrap.pypa.io/get-pip.py | python
(myvenv) $ deactivate
$ source ~/myvenv/bin/activate

http://docs.python-guide.org/en/latest/dev/virtualenvs/

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM