Pipenv管理Python项目

简介

    Pipenv,它的项目简介为 Python Development Workflow for Humans,是 Python 著名的 requests 库做者 kennethreitz 写的一个包管理工具,它能够为咱们的项目自动建立和管理虚拟环境并不是常方便地管理 Python 包,咱们能够简单理解为 pip、Pipfile 和 virtualenv 的集合体,它能够为咱们的项目自动建立和管理一个虚拟环境。如今它也已是 Python 官方推荐的包管理工具。python

总的来讲,Pipenv 能够解决以下问题:linux

  • 咱们不须要再手动建立虚拟环境,Pipenv 会自动为咱们建立,它会在某个特定的位置建立一个 virtualenv 环境,而后调用 pipenv shell 命令切换到虚拟环境。
  • 使用 requirements.txt 可能会致使一些问题,因此 Pipenv 使用 Pipfile 和 Pipfile.lock 来替代之,并且 Pipfile 若是不存在的话会自动建立,并且在安装、升级、移除依赖包的时候会自动更新 Pipfile 和 Pipfile.lock 文件。
  • 普遍使用 Hash 校验,保证安全性。
  • 能够更清晰地查看 Python 包及其关系,调用 pipenv graph 便可呈现,结果简单明了。
  • 可经过自动加载 .env 读取环境变量,简化开发流程。

安装

首先请确保安装了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

安装Python第三方模块包

$ pipenv install flask

卸载Python第三方模块包

# 卸载具体模块包
$ pipenv uninstall flask

# 卸载全部模块包
$ pipenv uninstall --all

安装全部在Pipfile.lock文件中指定的包

$ pipenv sync
相关文章
相关标签/搜索