0%

Pipenv 使用指南

pipenv是requests作者的一个项目, 整合了virtualenv, pip的优点,用于更方便地为项目建立虚拟环境并管理虚拟环境中的第三方模块。后来这个项目交给Python基金会维护。

为什么要使用Pipenv?:

  • 自动关联项目相关的 virtualenv,能够快速的加载 virtualenv。
  • 提供的 pipenv替代 pip并自带一个依赖清单 Pipfile,和依赖锁定 Pipfile.lock。
  • 其中 Pipfile除了依赖清单还支持固定 pypi源地址,固定 python版本。
  • Pipfile还支持 dev依赖清单. pipenv install的包会强制使用 Pipfile中的源.
  • 解决了 pip install pandas时里的 numpy依旧走官方 pypi.
    还有就是可以直接切换 python2,3
  • 使用 pipenv graph命令可以看到依赖树

1、安装Pipenv

pip3 install pipenv

2、创建虚拟环境

pipenv管理虚拟环境是按项目来的, 要为你的某个项目新建一个虚拟环境, 只需要在项目目录下运行如下命令:

1
2
3
4
5
6
7
8
# 新建Python2 的虚拟环境
pipenv --two

# 新建Python3 的虚拟环境
pipenv --three

# 更换豆瓣的pipy源
sed -i s/pypi.python.org/pypi.doubanio.com/g Pipfile

该命令会在项目目录下生成一个Pipfile的文件,用于记录虚拟环境的信息及第三方依赖的信息。

3、安装第三方模块

pipenv可以自动安装你项目的第三方模块 :

pipenv install

安装列表是通过读取pipfile, pipfile.lock文件实现的, 如果没有这两个文件就根据requirements.txt生成pipfilepipfile.lock并读取.
如果想单独安装某个模块还可以指定模块名安装:

pipenv install sanic

单独安装模块后会自动将新模块信息添加到pipfile中, 要同时更新pipfile.lock需要运行:

pipenv lock

4、进入虚拟环境

# 进入虚拟环境
pipenv shell

# 退出
exit

还有一个 pipenv run的可以直接执行 virtualenv环境下的命令。

5、基本命令

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
Usage: pipenv [OPTIONS] COMMAND [ARGS]...
Options:
--update 升级 pipenv, pip 到最新.
--where 输出项目的目录信息.
--venv 输出 virtualenv 的目录信息.
--py 输出 Python 解析器的路径.
--envs 输出环境变量的设置.
--rm 删除当前 virtualenv.
--bare Minimal output.
--completion Output completion (to be evald).
--man 显示使用手册.
--three / --two 使用 Python 3/2 来创建 virtualenv
--python TEXT 直接指定 Python 解析器.
--site-packages 拷贝系统 site-packages 到 virtualenv.
--jumbotron An easter egg, effectively.
--version 显示版本信息并退出.
-h, --help 显示当前信息并退出.
Commands:
check 检查安全漏洞和反对 PEP 508 标记在Pipfile提供.
graph 显示当前依赖关系图信息.
install 安装提供的包,并加入 Pipfile 的依赖清单中
lock 生成 Pipfile.lock.
open 在编辑器(vim)查看一个特定模块.
run 在 virtualenv 中执行命令.
shell 切换到 virtualenv 中.
uninstall 删除提供的包,并清理 Pipfile 的依赖清单中.
update 卸载当前所以依赖,然后安装最新包
如果对你有帮助,请我喝杯奶茶吧!
pengshp 微信

微信

pengshp 支付宝

支付宝

欢迎关注我的其它发布渠道