近日剛把自己的 Mac 電腦送修,拿回家後又要重新安裝 Python(哭哭)。不過,經過多次重新安裝 Python 的建議,我終於找到最快在 Mac 安裝 Python 的方法了!
這個方法同樣適用於 Linux 及其他 UNIX 系統,但我們集中討論 Mac OS 的安裝。
如果您已經有 1 個 Python 版本,但想同時安裝更多 Python 版本,可以參考這裡:macOS 安裝多個 Python 版本?pyenv 配合 VS Code 教學
Mac OS 預設的 Python 版本
本次教學主要用到 Terminal,是 Mac OS 裡的虛擬終端(Terminal Emulator),可以讓我們透過輸入指令完成 Mac OS 的作業系統操作。
首先我們開啟一個新的 Terminal。您可以按一下 Command + Space 搜尋 “Terminal”,或到啟動台(Launchpad)搜尋 “Terminal”。
我們在彈出的視窗輸入「python」,然後按一下 Tab。這是 Terminal 裡的自動完成(Autocomplete),我們可以見到有些 Python 的版本已經安裝在 Mac OS 上。
如上圖所示,我們見到有 python、python2、python2.7、python3 的版本可以讓我們選擇。
在最新的 Mac OS 版本(macOS Big Sur 11.4)預設安裝了 Python 2.7.16 和 Python 3.8.2。這是由於 Mac OS 系統其他內設的應用程式需要使用這 2 個版本的 Python 運算。
預設的 Python 3 版本
大部分人已經使用 Python 3.X 作為他們的預設 Python 版本。我們來檢查一下預設安裝的 Python 3 是哪個版本。
在剛才的 Terminal,我們把 “python” 刪除(使用 delete 鍵),然後貼上以下的指令,並按一下 return 鍵:
python3 --version
透過這個指令,我們見到 Mac OS 系統預設的 python3 的版本為 Python 3.8.2。這代表當我們使用 Mac OS 運行 Python 3 代碼時,Mac OS 會使用 Python 3.8.2 而非其他 Python 3.X 的版本。
為何安裝其他 Python 版本?
既然系統預設已經有 Python 3.8.2 可供使用,我們為什麼還要學習安裝其他 Python 版本?以下有 3 個考慮:
範疇 | 考慮 |
---|---|
Python 更新 | 系統的 Python 版本不會隨著 Python Foundation 推出更新而下載新的版本(除非有 Mac OS 的 upgrade)。所以,即便到目前為止,Python 已經推出 Python 3.8.11、3.9 等的更新,但 Mac OS 預設的 Python 版本仍然停留於 Python 3.8.2。 |
Library 兼容 | 有些 Python library 未必兼容 Python 3.8.2,特別是一些沒有企業贊助(sponsor)、自費維繫的 library。如果在編程時要用到這些 library,便需要自行安裝相容的 Python 版本。 |
部署兼容 | 如果您的 Python 編碼最後會部署(deploy)到伺服器(例如 Heroku、Google App Engine 等),那麼不同伺服器也未必兼容 Python 3.8.2。 |
我特別鍾情於 Python 3.7 的版本,因為這個版本的 Python 兼容絕大多數我使用的 Library。現在我們來學習如何自行安裝 Python 3.7 (以及其他 Python 3.X 的版本)吧。
第一步:安裝 Homebrew
(如果您想進一步了解 Homebrew,可以按這裡到安裝頁面了解更多)
首先我們在 Mac OS 系統安裝 Homebrew。Homebrew 是一個非常方便,用以安裝一些 Mac OS 部件的軟體,類似於 installer 的概念。
複製以下的代碼,並貼上 Terminal,然後按 return 鍵。途中如果見到「Password:🔑」的時候(如下圖),輸入您的 Mac 登入密碼。
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
一會後,Terminal 應該會彈出下圖所示的訊息,詢問您是否希望安裝 Xcode Command Line Tools。這是一個 Mac OS 上編程十分重要的部件。按一下 return 鍵繼續。
最後,您會見到「Next steps:」的字眼,代表已經成功安裝 Homebrew。
第 2 步:以 Homebrew 安裝 Python 3.7
安裝了 Homebrew 以後,事情就變得十分簡單。複製以下的代碼,並貼上 Terminal,然後按 return 鍵。
brew install [email protected]
留意我們的指令十分簡單,就是叫「brew」(即是 Homebrew)去安裝(install)名為 「[email protected]」 的軟體。
「[email protected]」是一個 Homebrew formulae。Homebrew formulae 就是一種 Homebrew 能夠理解的軟體名稱,讓我們只需要知道 Homebrew formulae 便可以安裝很多軟體,而不需要到不同網站下載若干個安裝檔案。
第 3 步:把 python3 指令預設為 Python 3.7
最後我們需要把 python3 的指令預設為我們剛安裝的 Python 3.7。這是方便我們以後運行 Python 3 代碼時,可以避免以不兼容的 Python 版本操作。
複製以下的代碼,並貼上 Terminal,然後按 return 鍵。
brew link --overwrite [email protected]
再檢查已經安裝的 Python 版本
如上面一樣,我們在 Terminal 輸入「python」,然後按一下 Tab。
對比之前的輸出,我們見到多了 python3.7 的選項。這是 Homebrew 剛剛幫我們安裝的 Python 版本。
檢查 python3 的版本
在 Terminal 然後貼上以下的指令,並按一下 return 鍵:
python3 --version
透過這個指令,我們見到 Mac OS 系統預設的 python3 的版本為 Python 3.7.10,而非 Python 3.8.2。這代表當我們使用 Mac OS 運行 Python 3 代碼時,Mac OS 會使用我們新安裝的 Python 3.7.10。
結語
希望您成功在您的 Mac 運算系統安裝 Python,踏出使用 Python 編程的第一步!接下來我們會解釋 virtualenv、pip 的應用,以及 Virtual Studio Code 的使用方法。
想知道如何安裝更多的 Python 版本?快來參考這篇教學:macOS 安裝多個 Python 版本?pyenv 配合 VS Code 教學
- VSCode 1/5: macOS 最佳 Python 編程工具?豐富的插件商店?Visual Studio Code 安裝攻略
- VSCode 2/5: 設定虛擬環境 Virtual Env,管理 Python 專案!
- VSCode 3/5: 實戰篇!版面介紹、管理 Python 專案和多個 .py
- VSCode 4/5: 讓 pip 安裝和管理 Python Libraries,結合虛擬環境!
- VSCode 5/5: Jupyter Notebook 互動編程?實在太方便了