[Python] 使用 pyenv 管理 python 版本

pyenv 可以協助管理 python 的版本,讓你在 python2、python3 間隨意切換,此篇會紀錄我是如何安裝 pyenv 的,以下是我的系統配置:

作業系統:MacOS Mojave 10.14.6
終端機:bash terminal

會分為以下步驟:

  1. homebrew 安裝 pyenv
  2. 輸入 pyen init
  3. 修改 .bash_profile
  4. 使 .bash_profile 生效
  5. 用 pyenv 安裝 python 版本
  6. 驗證

Step01. homebrew 安裝 pyenv

不知道 homebrew 的可以估狗一下
安裝完 homebrew 後於終端機執行以下指令

1
brew install pyenv

Step02. 輸入 pyen init

應該會跑出一個 guideline,告訴你要怎麼設定環境變數,以我的例子,我先將以下指令複製起來

1
2
3
export PYENV_ROOT="$HOME/.pyenv"
export PATH="$PYENV_ROOT/bin:$PATH"
eval "$(pyenv init --path)"

Step03. 修改 .bash_profile

將上一步複製的指令,新增於 .bash_profile 檔案最後,.bash_profile 通常會放在 ~/ 路徑下,你可以執行以下指令確認該檔案是否存在

1
2
cd ~
cat .bash_profile

Step04. 使 .bash_profile 生效

1
source .bash_profile

Step05. 用 pyenv 安裝 python 版本

可以先執行以下指令,看有哪些版本可供安裝

1
pyenv install --list

選定好版本後,用 pyenv 安裝 python

1
pyenv install 3.8.0

安裝完後查看目前的版本,應有 system 以及剛剛安裝的版本 3.8.0

1
2
3
4
5
pyenv versions

# 輸入上面的指令後應該有像下面的結果
* system
3.8.0 (set by /Users/{當前登入的帳號}/.python-version)

接著選擇剛剛安裝的版本。使用 global 指令的話,之後你開啟終端機,呼叫 python 時都會使用這個版本,如果你只想要此次使用該版本,則使用指定 local

1
pyenv global 3.8.0

Step06. 驗證

1
2
python -V # 理應為 3.8.0
which python # 路徑理應是 /Users/{當前登入的帳號}/.pyenv/shims/python

參考

[用舒服的姿勢開發 Python Project] Day 03 - Pyenv 基本使用
Python 版本管理的好工具 - pyenv
在 Mac 上用 pyenv 輕鬆安裝 Python3 (可直接支援安裝多種版本)

Comments