文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

python生成requirements.txt文件的推荐方法

2024-04-02 19:55

关注

一、什么是requirements.txt文件及作用

requirements.txt 文件是项目的依赖包及其对应版本号的信息列表,即记载你这个项目所安装的依赖。

作用:用来重新构建项目或者记录项目所需要的运行环境依赖,你从 GitHub上下载了一个 Python 项目,然后要运行这个项目,你需要安装和项目一样的依赖,这个时候 requirements.txt 文件就起作用,运行命令 pip install -r requirements.txt 来安装该项目所依赖的所有包(前提是这个项目有requirements.txt 文件)。

二、怎么生成requirements.txt 文件

有两种方式:Python里的pip freeze和第三方库pipreqs

1、pip freeze方法(不推荐)

如果你在写的项目是使用虚拟环境写的,就可以使用这个方法,因为这个方法会将你整个Python环境的包全把生成出来,如果你不是使用虚拟环境,使用这个方法,你会发现生成的文件,里面有很多你并不需要的包,这样吗使用安装的依赖包的时候会有很多不需要的包

终端使用命令:

pip freeze > requirements.txt

2、pipreqs第三方库(推荐)

使用 pipreqs 可以自动检索到当前项目下的所有组件及其版本,并生成 requirements.txt 文件,极大方便了项目迁移和部署的包管理。相比直接用pip freeze 命令,能直接隔离其它项目的包生成。

使用步骤:

1、先安装pipreqs库

pip install pipreqs

2、在当前目录使用生成

pipreqs ./ --encoding=utf8 --force

--encoding=utf8 :为使用utf8编码

--force :强制执行,当 生成目录下的requirements.txt存在时覆盖 

. /: 在哪个文件生成requirements.txt 文件

补充:setup.py 与 requirements.txt 区别

setup.py 这个文件是用来管理模块的,你可以将你的项目打包为模块上传到 pypi 中,也同样能将项目作为模块放入python 的系统加载模块目录下。

requiremens.txt 这个文件是列举你这个项目引用了哪些非本项目的依赖的,除此之外,没有其他作用。

因此,可以看出这两个项目其实并没有冲突关系,而且有很大共存的必要。

假如你的项目需要保存为系统模块,或者可安装为系统命令的 setup.py 就必不可少了

假如你的项目是可以直接运行的,那么 requirements.txt 也是必不可少。

如果你两种功能都需要,那么就两个文件都不能少。

有这两种功能都需要的么?

必须有啊,而且还很多,例如 Flask,他就支持两种方式:

以系统命令的方式启动,在 Flask 0.11.1 中新加入了一个 Click 包,他可以让你 setup 之后以命令的方式运行

直接运行,传统的 Flask 启动方式一般就是 app.run() 或者 python manage.py runserver

总结

到此这篇关于python生成requirements.txt文件的文章就介绍到这了,更多相关python生成requirements.txt文件内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯