pyenv管理python多版本
pyenv常用命令
pyenv-virtualenv插件

项目地址

pyenv github

安装及配置

  1. clone pyenv到本地家目录
    git clone git@github.com:pyenv/pyenv.git ~/.pyenv
    
  2. 配置pyenv环境
    # pyenv
    export PYENV_ROOT="$HOME/.pyenv"
    export PATH="$PYENV_ROOT/bin:$PATH"
    if which pyenv > /dev/null; then eval "$(pyenv init -)"; fi
    
  3. 安装pyenv-virtualenv插件
    git clone git@github.com:pyenv/pyenv-virtualenv.git $(pyenv root)/plugins/pyenv-virtualenv
    
  4. 配置pyenv-virtualenv环境
    # pyenv-virtualenv
    eval "$(pyenv virtualenv-init -)"
    

    如果用的是zsh,需要在~/.zshrc中添加

pyenv常用命令

  • 常用命令示例
    pyenv install --list # 或pyenv install -l  查看可安装的python版本
    pyenv install 3.8.5 # 安装指定python版本
    pyenv versions  # 查看已安装版本 有*表示当时使用版本,也可用pyenv version查看当前使用的版本
    pyenv uninstall 3.8.5  # 删除指定python版本
    pyenv global 3.8.5  # 设置当前全局python版本
    pyenv local  2.7.18  # 设置局部python版本
    pyenv local --unset  # 取消局部python版本设置,或者删除当前目录下的.python-version文件
    

pyenv local设置当前路径使用的 Python 环境,会在当前路径创建一个.python-version文件,下次进入该目录时,会自动激活虚拟环境,离开后自动退出

  • 其他
    pyenv commands  # 查看pyenv命令
    pyenv rehash  # 刷新python已安装列表
    

pyenv安装的python版本路径为~/.pyenv./versions

pyenv-virtualenv的使用

pyenv virtualenv 3.8.5 3.8test # 创建虚拟环境pyenv virtualenv 指定的python版本 虚拟环境名称
pyenv virtualenv venv38 # 用当前python版本创建虚拟环境venv38
pyenv virtualenvs # 查看已安装的虚拟环境
pyenv actviate 3.8test # 激活虚拟环境
pip3.8 install reqests # 在虚拟环境中安装第三方包
pip3.8 list # 环境下的包
pyenv deactivate # 退出虚拟环境
pyenv virtualenv-delete 3.8test # 删除虚拟环境 或 pyenv uninstall 3.8test

pyenv-virtualenv 创建的虚拟环境所在路径为~/.pyenv./versions/<指定python版本>/envs
在对应的虚拟环境下安装的第三方包路径如~/.pyenv/versions/3.8.5/envs/3.8test/lib/python3.8/site-packages

virtualenvwrapper管理

当然也可以用virtualenvwrapper来进一步管理虚拟环境,可参看之前的文章mac环境配置

 if [ -f /usr/local/bin/virtualenvwrapper.sh ]; then
     export WORKON_HOME=~/venv
     VIRTUALENVWRAPPER_PYTHON=/usr/local/bin/python3
     source /usr/local/bin/virtualenvwrapper.sh
fi

参考

  1. python多版本切换工具
  2. pyenv使用
  3. pyenv快速入门
  4. Pyenv介绍