pyenv 创建和管理虚拟环境

    #Python

    虚拟环境是个好东西,把每个项目单独拎出来集成到一个虚拟环境内,虚拟环境之间的各种依赖库互不干扰。

    之前我一直是用 virtualenv 来管理虚拟环境的,但是当我需要管理 Python 的多个版本时,virtualenv 就显得繁琐不方便了,不过还好,pyenv 出现了。pyenv 是一个 Python 多版本管理工具,可以和 virtualenv 完美结合,实现多版本、多环境的控制。

    安装 pyenv

    pvenv 的作者贴心的给我们准备了一个安装脚本,在终端中执行即可:

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

    安装完毕后,脚本在最后会提示你配置 pyenv 的环境变量,安装说明操作即可,最后重载 profile

    source /YOUR_PROFILE_PATH
    

    使用该脚本安装的 pyenv 默认整合了 virtualenv。

    通过 pyenv 安装 Python 不同版本

    我们可以通过下述命令

    pyenv install -l
    

    来查看所有可用版本。

    比如说,我要安装 python 3.5.1 版本,我只需要执行如下命令:

    pyenv install 3.5.1
    

    查看和切换当前 Python 版本

    查看

    pyenv versions 
    

    列出你已经安装的所有 Python 版本和当前使用的版本,其中,system 代表系统预装 Python

    切换

    globallocal 都是用来切换当前 Python 版本的命令,不过,global 是全局切换,local 是局部切换。

    pyenv local 3.5.1
    

    通常情况下,我们不适用 global 切换命令,因为很多系统工具依赖于低版本的 Python,切换之后,可能会出现不可预知的后果。

    卸载

    pyenv uninstall 3.5.1
    

    该命令即可卸载 Python 3.5.1 版本。

    pyenv 与 virtualenv

    pyenv virtualenvs
    

    该命令将列出系统目前所有已创建的虚拟环境。

    pyenv virtualenv [-f|--force] [-u|--upgrade] [VIRTUALENV_OPTIONS] <version> <virtualenv-name>
    

    该命令将创建新的虚拟环境,比如说,我要创建一个使用 Python 3.5.1 的新项目,命令如下:

    pyenv virtualenv 3.5.1 my_project
    

    实际上,创建好的虚拟环境就和一个单独的 Python 版本一样,你可以在 pyenv versions 中看到,也可以通过 localglobal 命令切换虚拟环境。

    同样的,当项目结束,你可以通过 pyenv uninstall my_project 来删除该虚拟环境。


    参考文章:

    安装Python