如何安裝 Python

--

我原本以為這個問題很簡單。因為只要去官網下載就好了。反正不就是一個精靈,一直按下一步嗎?

直到最近發現,這似乎不是最好的安裝方法。

版本之亂

現在的程式語言更新超快,昨天才 python 3.7 現在已經 python 3.9 了。如果今天出了 python 3.10 不就每次都要重新安裝了嗎? 不然就是又要改環境變數,很麻煩。有些人永遠搞不清楚自己電腦上面裝的 python 是哪一版。還有人發現使用 sudo 之後跟沒用 sudo 的 python 版本好像不一致。版本一錯亂,各種鬼事都會發生。

這些很煩的問題,通通可以用 Fundamental theorem of software engineering 的原則來解。簡單說,就是再加一層來負責管理這麻煩的版本問題。

這個解決方案我第一次看到是在 node.js 裡面的版本管理套件,叫做 node version manager (nvm) 。可以一個指令切換 node.js 版本,用過都說讚。我就在想 python 應該要有相似的東西,果真被我找到了。他叫做 pyenv 。

pyenv 管理版本

它的原理是改寫環境變數,你可以使用一個指令把環境變數改寫,改寫完後,所有的 python 命令最後呼叫到的版本都會一致。

用法

首先用好用的 mac 工具 homebrew 來安裝。

brew install pyenv

你可以先列出目前可下載的所有版本。

pyenv install --list

可能會看到一堆。或許你可以直接去 python 官網看目前穩定版本是多少。舉例來說,目前最新的版本是 3.9.0 。

pyenv install 3.9.0

這樣我們就有 3.9.0 版本的了。

接著可以列出目前已下載, pyenv 可以使用的版本。

pyenv versions

可以看到目前我還是使用 3.7.2 ,我可以換成 3.9.0 。

pyenv global 3.9.0

這樣就成功了。不管是 python -V 或是 sudo python -V 都可以看到版本是 3.9.0 。

不過,這年頭要裝個程式語言怎麼這麼麻煩,還要另外裝個軟體來管程式語言的版本。

--

--