原创: PythonicPython
pipenv是Python官方推荐的包管理工具。可以说,它集成了virtualenv, pip和pyenv三者的功能。其目的旨在集合了所有的包管理工具的长处,如: npm, yarn, composer等的优点。
它能够自动为项目创建和管理虚拟环境,从Pipfile文件添加或删除安装的包,同时生成Pipfile.lock来锁定安装包的版本和依赖信息,避免构建错误。
pipenv主要解决了如下问题:
不用再单独使用pip和virtualenv, 现在它们合并在一起了
不用再维护requirements.txt, 使用Pipfile和Pipfile.lock来代替
可以使用多个python版本(python2和python3)
在安装了pyenv的条件下,可以自动安装需要的Python版本
安装
利用pip来安装pipenv
pip3 install pipenv
用法
常用命令
# 安装包
$ pipenv install
# 激活当前项目的虚拟环境
$ pipenv shell
# 安装开发依赖包
$ pipenv install pytest --dev
# 图形显示包依赖关系
$ pipenv graph
# 生成lockfile
$ pipenv lock
# 删除所有的安装包
$ pipenv uninstall --all
指定安装包的版本信息
为了安装指定版本的包信息,可以使用:
$ pipenv install requests==2.13.0
这个命令也会自动更新Pipfile文件
指定Python的版本信息
在创建虚拟环境的时候,我们可以指定使用的python版本信息,类似pyenv
$ pipenv --python 3.7
$ pipenv --python 2.7.15
pipenv会自动扫描系统寻找合适的版本信息,如果找不到的话,同时又安装了pyenv, 它会自动调用pyenv下载对应的版本的python
自定义虚拟环境的路径
默认情况下,pipenv使用pew来管理虚拟环境的路径,我们可以自定义WORKON_HOME环境变量来设置虚拟环境的路径。比如:
export WORKON_HOME=~/.venvs
我们也可以通过设置环境变量PIPENV_VENV_IN_PROJECT使虚拟环境在每个项目的根目录下project/.venv。
转自本人公众号: