美文网首页
Mac配置Python开发环境之pyenv-virtualenv

Mac配置Python开发环境之pyenv-virtualenv

作者: shandingdongren | 来源:发表于2018-09-11 20:03 被阅读0次

    1、pyenv-virtualenv简介

    pyenv-virtualenv是一个管理python虚拟环境的插件。pyenv 解决的是同一个系统中不同版本的 python 并存的问题,而 pyenv-virtualenv 解决的是不同项目所依赖的软件包之间可能产生冲突的问题。在实际使用 python 的过程中,很容易出现这样的问题:

    通过pip安装软件包 A 时安装了 A 所依赖的软件包 B;之后又通过pip安装软件包 C 时再次安装了 B 并将之前的覆盖,但是因为 C 和 A 所依赖的 B 版本不同,安装完 C 后导致 A 无法运行。

    pyenv-virtualenv 通过为每个项目设置独立的虚拟环境(目录)来解决上述问题。由于 pyenv-virtualenvpyenv 的一个插件,因此需要首先安装 pyenv ,然后通过 git 或者 brew 安装 pyenv-virtualenv

    使用 pyenv-virtualenv 创建虚拟环境,命令格式为

    pyenv virtualenv [version] <venv-name>

    $ pyenv virtualenv 3.6.1 my-virtual-env-3.6.1
    

    上述命令将创建一个名为my-virtual-env-3.6.1的虚拟环境(目录),并且将 python 3.6.1 对应的bin和lib复制到该环境中。当该虚拟环境被激活后,所有的 python 操作都只在该环境中进行,从而和其它 python 内容隔离。

    pyenv-virtualenv 支持自动激活和退出虚拟环境。首先确保在 shell 配置文件中添加了

    eval "$(pyenv init -)"
    eval "$(pyenv virtualenv-init -)"
    

    我使用的是zsh,所以在家目录(~)下的.zshrc中添加了上述两行命令。

    接着在需要使用虚拟环境的目录(通常是项目目录)中:建立一个.python-version的文本文件,将虚拟环境名称(如my-virtual-env-3.6.1)写在里面即可。之后每次进/出该目录时,虚拟环境都将自动激活/退出。

    也可以用命令手动激活和退出:

    $ pyenv activate my-virtual-env-3.6.1
    $ pyenv deactivate
    

    查看所有虚拟环境删除虚拟环境等更多命令和其他使用细节,请参考官方文档

    3、参考

    相关文章

      网友评论

          本文标题:Mac配置Python开发环境之pyenv-virtualenv

          本文链接:https://www.haomeiwen.com/subject/kenegftx.html