Python包和版本管理的最好工具----pipenv,python----pipenv, pipenv 是
Python包和版本管理的最好工具----pipenv,python----pipenv, pipenv 是
pipenv 是Kenneth Reitz大神的作品,提供Python的各个版本间的管理,各种包管理。个人觉得是virtualenv pip等工具的合体。下面让我们来看看功能吧。
本文的测试环境是Python3.6,但也支持python2。
1 安装
首先请确保安装了python3和对应的pip3。
1 pip3 install pipenv
如下:
2 创建虚拟环境
1 mkdir project2 cd project3 pipenv install
如下:
初始化好虚拟环境后,会在项目目录下生成2个文件Pipfile和Pipfile.lock。为pipenv包的配置文件,代替原来的 requirement.txt。
项目提交时,可将Pipfile文件和Pipfile.lock文件一并提交,待其他开发克隆下载,根据此Pipfile 运行命令pipenv install --dev生成自己的虚拟环境。
Pipfile.lock文件是通过hash算法将包的名称和版本,及依赖关系生成哈希值,可以保证包的完整性。
3 安装包
用pycharm先打开咱们刚刚创建的project,然后创建APP目录,在app目录下创建如下spider.py文件,导入requests库,并没有安装。
安装requests包:
1 pipenv install requests
如下:
这样,在pycharm里就能看到requests已经可用:
4查看安装的包和依赖关系
1 pipenv graph
如下:
4.1 如果只安装在开发环境中
1 pipenv install --dev requests --three
如下:
反应在Pipfile如下:
[[source]]url = "https://pypi.python.org/simple"verify_ssl = truename = "pypi"[packages]requests = "*"[dev-packages]requests = "*"[requires]python_version = "3.6"
安装包记录是在[dev-packages]部分,还是[packages]部分。在安装时,指定--dev参数,则只安装[dev-packages]下的包,若安装时不定指定--dev参数,只会安装[packages]包下面的模块。
[requires]下的python在构建新的虚拟环境时,若没有会自动下载安装。
5 像virtualenv一样用命令生成requirements 文件
1 pipenv lock -r --dev > requirements.txt
如下:
6 通过requirements.txt安装包
1 pipenv install -r requirements.txt
这样我们可以重用之前的requirement.txt 文件来构建我们新的开发环境,可以把我们的项目顺利的迁到pipenv。
7 在虚拟环境运行py代码
7.1 方法一:pipenv run python xxx.py
1 pipenv run python xxx.py
如下:
7.2 方法二:启动虚拟环境的shell环境
1 pipenv shell
如下:
加上参数也可:
8 删除包
1 pipenv uninstall reuqests
如下:
9 删除虚拟环境
1 pipenv --rm
如下:
删除虚拟环境之后,再次运行pip shell 会发现先为这个project创建虚拟环境,然后再打开shell。如下:
10 常用参数及命令一览
1 pipenv --where 列出本地工程路径 2 pipenv --venv 列出虚拟环境路径 3 pipenv --py 列出虚拟环境的Python可执行文件 4 pipenv install 安装包(创建虚拟环境) 5 pipenv install moduel --dev 在开发环境安装包 6 pipenv graph 查看包依赖 7 pipenv lock 生成lockfile 8 pipenv install --dev 安装所有开发环境包 9 pipenv uninstall --all 卸载所有包10 pipenv --rm 删除虚拟环境
更多命令及使用猛击这里。
Python包和版本管理的最好工具----pipenv
相关内容
- python爬虫--模拟登录知乎,python爬虫--,1、处理登录表单
- Python中的turtle初探,Pythonturtle初探,turtlePyth
- python学习之遇到得基础报错,python学习基础报,error01:
- python 之开发工具 sublimetext 3,pythonsublimetext,一、前言
- 短时傅里叶变换(Short Time Fourier Transform)原理及 Python 实
- Python replace()方法,pythonreplace方法,描述Python r
- Python人工智能之路 - 第三篇 : PyAudio 实现录音 自动化交
- Python图片识别——人工智能篇,,一、安装pytess
- linux中python安装,linuxpython安装,1、查看当前环境中是
- Python3基础 小技巧 为模块更换名字 import 模块名 as 别名
评论关闭