1. 当前位置:网站首页 > Python

Pipenv的使用(一款比较不错的python包管理工具)


python包管理

原来的 requirement.txt的另一种替代方法,可能是因为前端写多了,更喜欢这种包管理的方式,本次环境是基于win10,安装了Miniconda3,并配置了环境变量(python3.8 使用python -V或pip -V命令都可以出现版本号)

pipenv主要有以下特性:

  • pipenv集成了pip,virtualenv两者的功能,且完善了两者的一些缺陷。
  • 过去用virtualenv管理requirements.txt文件可能会有问题,Pipenv使用Pipfile和Pipfile.lock,后者存放将包的依赖关系,查看依赖关系是十分方便。
  • 各个地方使用了哈希校验,无论安装还是卸载包都十分安全,且会自动公开安全漏洞。。
  • 通过加载.env文件简化开发工作流程。
  • 支持Python2 和 Python3,在各个平台的命令都是一样的。

安装pipenv

安装,记得要用https协议的镜像源
从清华镜像 https://pypi.tuna.tsinghua.edu.cn/simple
从阿里镜像 https://mirrors.aliyun.com/pypi/simple/

pip install pipenv -i https://pypi.tuna.tsinghua.edu.cn/simple

配置环境变量
使用命令得到版本号算ok,可以用everything软件搜索pipenv.exe 将该路径配置到系统变量PATH中

pipenv --version

创建环境

进入到项目目录,执行cmd命令进入到窗口,执行:

pipenv install
或
pipenv install --dev
  • 会在项目目录下生成2个文件Pipfile和Pipfile.lock为pipenv包的配置文件,代替原来的 requirement.txt。

  • 项目提交时,可将Pipfile 文件和Pipfile.lock文件一并提交,待其他开发克隆下载,根据此Pipfile 运行命令pipenv install --dev生成自己的虚拟开发环境。

  • 在安装时,指定--dev参数,则只安装[dev-packages]下的包;若安装时不定指定--dev参数,只会安装[packages] 包下面的模块。

  • 在构建新的python虚拟环境时,会自动下载安装[requires] 下的包。

  • Pipfile.lock 文件是通过hash算法将包的名称和版本,及依赖关系生成哈希值,可以保证包的完整性。

安装包

  • 执行安装命令即可进行pipenv包安装,这里加i后,Pipfile文件会自动记录当时从那个镜像拉的环境,并且会根据dev命令来分别存储开发环境、正式环境的包
pipenv install pyside6 -i https://mirrors.aliyun.com/pypi/simple/
pipenv install --dev requests -i https://mirrors.aliyun.com/pypi/simple/

运行

pipenv run python xxx.py
或进入到shell环境 类似activate 激活环境
pipenv shell
或配置pycahrm的环境变量,达到可以直接运行的效果
setting、project、python Interpreter、添加位置


其他命令

查看包依赖关系

pipenv graph

兼容requirements.txt 文件

生成requirements.txt

pipenv可以像virtualenv一样用命令生成requirements.txt 文件,命令如下:

pipenv lock -r --dev > requirements.txt

根据requirements.txt安装

pipenv install -r requirements.txt

删除python包(module)

pipenv uninstall [module_name]

删除虚拟环境

pipenv --rm

常用命令

pipenv --where                 列出本地工程路径,pycharm就可以配置虚拟的python环境位置了
pipenv --venv                  列出虚拟环境路径
pipenv --py                    列出虚拟环境的Python可执行文件
pipenv install                 创建虚拟环境
pipenv isntall [moduel]        安装包
pipenv install [moduel] --dev  安装包到开发环境
pipenv uninstall[module]       卸载包
pipenv uninstall --all         卸载所有包
pipenv graph                   查看包依赖
pipenv lock                    生成lockfile
pipenv run python [pyfile]     运行py文件
pipenv --rm                    删除虚拟环境
pipenv --python 3.7            创建3.7版本Python环境
pipenv shell                   打开一个处于虚拟环境下的命令行窗口 ,退出为 exit;
pipenv run python xxx.py       直接运行代码

本文最后更新于2023-1-19,已超过 3个月没有更新,如果文章内容或图片资源失效,请留言反馈,我们会及时处理,谢谢!
版权说明

本文地址:http://www.liuyangdeboke.cn/?post=35
未标注转载均为本站远程,转载请注明文章出处:

发表评论


评论列表

南京90后程序员
南京90后程序员 2023-01-19 15:00回复
#1
该方案可以有效规避部分不同python版本的问题

联系我们

在线咨询:点击这里给我发消息

微信号:17721538135

工作日:9:00-23:00,节假日休息

扫码关注