关于pipenv的介绍,大概应该也不需要详细说明,它是pip和virtualenv两者的功能的结合体。
详细的更多的介绍,网络搜索比比皆是。鉴于此,本文仅仅是充当为个人的实践笔录,仅此而已!
1:安装pipenv
查看当前系统环境下的pip的版本信息:
[root@localhost ~]# pip -V
pip 9.0.1 from /usr/local/lib/python3.5/site-packages (python 3.5)
基于pip3下的进行安装
pip install pipenv
image.png
2:创建项目,且在对应的目录下创建对于的虚拟环境
创建测试项目:
[root@localhost www]# mkdir pipeve_pro
[root@localhost www]# cd pipeve_pro/
[root@localhost pipeve_pro]#
创建虚拟环境:
[root@localhost pipeve_pro]# pipenv install
image.png
查看项目下的对应的生成的文件信息,有Pipfile和Pipfile.lock两个文件的生成:
上述两个文件的主要作用类似之前的requirement.txt,便于管理相关的依赖包。
Pipfile.lock 文件他是通过hash算法将包的名称和版本,及依赖关系生成相关的哈希值,这可以保证包的完整性。
[root@localhost pipeve_pro]# ll
total 8
-rw-r--r--. 1 root root 138 Feb 20 21:49 Pipfile
-rw-r--r--. 1 root root 453 Feb 20 21:49 Pipfile.lock
[root@localhost pipeve_pro]#
3:安装项目需要的相关的依赖包
[root@localhost pipeve_pro]# pipenv install requests
[root@localhost pipeve_pro]# pipenv install bottle
通过--dev指明该安装包只需安装在开发环境中(--three --two)
pipenv install --dev requests --three
4:查看当前项目的安装模块及相关依赖关系
[root@localhost pipeve_pro]# pipenv graph
bottle==0.12.16
requests==2.21.0
- certifi [required: >=2017.4.17, installed: 2018.11.29]
- chardet [required: >=3.0.2,<3.1.0, installed: 3.0.4]
- idna [required: >=2.5,<2.9, installed: 2.8]
- urllib3 [required: >=1.21.1,<1.25, installed: 1.24.1]
[root@localhost pipeve_pro]#
5:生成requirement.txt文件
[root@localhost pipeve_pro]# pipenv lock -r --dev > requirements.txt
[root@localhost pipeve_pro]# ll
total 12
-rw-r--r--. 1 root root 166 Feb 20 21:56 Pipfile
-rw-r--r--. 1 root root 2229 Feb 20 21:56 Pipfile.lock
-rw-r--r--. 1 root root 28 Feb 20 22:01 requirements.txt
[root@localhost pipeve_pro]#
6:使用pipenv 通过requirements.txt进行安装包的安装
[root@localhost pipeve_pro]# pipenv install -r requirements.txt
Requirements file provided! Importing into Pipfile…
Installing dependencies from Pipfile.lock (6b3bdf)…
� ▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉ 6/6 — 00:00:02
To activate this project's virtualenv, run pipenv shell.
Alternatively, run a command inside the virtualenv with pipenv run.
[root@localhost pipeve_pro]#
网友评论