Pipenv,它的项目简介为 Python Development Workflow for Humans,是 Python 著名的 requests 库做者 kennethreitz 写的一个包管理工具,它能够为咱们的项目自动建立和管理虚拟环境并不是常方便地管理 Python 包,咱们能够简单理解为 pip、Pipfile 和 virtualenv 的集合体,它能够为咱们的项目自动建立和管理一个虚拟环境。如今它也已是 Python 官方推荐的包管理工具。python
总的来讲,Pipenv 能够解决以下问题:linux
首先请确保安装了python和对应的pip。算法
$ pip install pipenv
$ pipenv --venv
设置环境变量PIPENV_VENV_IN_PROJECT=1shell
linux系统中可在.bash_profile或.bashrc中加入flask
export PIPENV_VENV_IN_PROJECT=1
windows系统就要在 控制面板 -> 系统 -> 高级系统设置 -> 高级 -> 环境变量 中添加。windows
# 以当前系统安装的python版本为基础建立虚拟环境 # 先进入项目目录 $ pipenv install # 下面的命令不推荐使用,由于这些命令并不能自动下载安装相应版本的python,而是在系统中寻找已有的python # 建立python3的虚拟环境 $ pipenv --three # 建立python2的虚拟环境 $ pipenv --two # 建立具体版本的虚拟环境 $ pipenv --python 3.7
建立虚拟环境后,会在项目目录下生成两个文件Pipfile和Pipfile.lock。这两个文件是pipenv包的配置文件,代替virsualenv的requirement.txt文件。安全
使用版本管理工具进行项目提交时,可将Pipfile文件和Pipfile.lock文件一并提交,待其余开发克隆下载,根据此Pipfile运行命令pipenv install生成本身的虚拟环境。bash
Pipfile.lock文件是经过hash算法将包的名称和版本,以及依赖关系生成哈希值,能够保证包的完成性。工具
相似使用visualenv时的activateui
$ pipenv shell
$ pipenv --rm
$ pipenv --venv
$ pipenv graph
$ pipenv install flask
# 卸载具体模块包 $ pipenv uninstall flask # 卸载全部模块包 $ pipenv uninstall --all
$ pipenv sync