使用 pyenv 管理 python 虚拟环境

pyenv

使用 pyenv 可以:

  • 自由切換不同的 python 版本
  • 自由切換不同的 virtualenv(即 virtualenv 的功能)
  • global 與 local 環境的區分(可以對某個具體的目錄使用指定的 python 版本)
  • 集中式管理(配置、包、虛擬環境都在 ~/.pyenv 目錄中)

install, update, uninstall

install

the github way (recommanded)

官网 推荐的方法

$ curl -L https://github.com/pyenv/pyenv-installer/raw/master/bin/pyenv-installer | bash

但是 curl 時 timeout,所以我稍微改了下流程:

$ wget https://github.com/pyenv/pyenv-installer/raw/master/bin/pyenv-installer
$ zsh pyenv-installer

根據提示在 .zshrc 中添加:

export PATH="/home/dragon/.pyenv/bin:$PATH"
eval "$(pyenv init -)"
eval "$(pyenv virtualenv-init -)"

update

$ pyenv update

uninstall

执行脚本:

$ rm -rf ~/.pyenv

并删除 .bashrc 或 .zshrc 中的:

export PATH="~/.pyenv/bin:$PATH"
eval "$(pyenv init -)"
eval "$(pyenv virtualenv-init -)"

pyenv 常用命令

如果不記得具體的命令,可以 pyenv commands 查看所有命令 ?

命令 含義
pyenv commands 查看所有可用的命令
pyenv install --list 可用的版本
pyenv install 3.7.2 安裝指定版本,在 ~/.pyenv/versions
pyenv versions 查看安裝的版本
pyenv uninstall 3.7.2 移除指定版本
pyenv global 3.7.2 設置全局 python,即使新開的 terminal 也有效 (~/.pyenv/version)
pyenv local 3.7.2 只設置當前目錄下的版本(請看 ./python-version

pyenv-virtualenv

pyenv-virtualenv 是一個 pyenv 插件,用於管理 python 虛擬環境。
用上面 github 的方法安裝時,pyenv-virtualenv 插件已安裝上。
基本操作如下:

  • 創建虛擬環境pyenv virtualenv 3.7.2 v372env
    • pyenv versions 可以看到 3.7.2/envs/v372env
    • pyenv virtualenvs 也可以看到
    • 創建的 v372env 實際位於 ~/.pyenv/versions/3.7.2/envs
  • 激活虛擬環境pyenv active v372env
  • 退出虛擬環境pyenv deactive v372env
  • 刪除虛擬環境pyenv uninstall v372env

资源地图

  • github: pyenv
  • zhihu: Python 版本管理神器 - pyenv
  • github: pyenv-virtualenv

你可能感兴趣的:(python)