时间:2021-05-22
简介
Python项目中必须包含一个 requirements.txt 文件,用于记录所有依赖包及其精确的版本号。以便新环境部署。
主要的写法如下所示
pip freeze > requirements.txt # 生成requirements.txtpip install -r requirements.txt # 从requirements.txt安装依赖支持的写法
-r base.txt # base.txt下面的所有包pypinyin==0.12.0 # 指定版本(最日常的写法)django-querycount>=0.5.0 # 大于某个版本django-debug-toolbar>=1.3.1,<=1.3.3 # 版本范围ipython # 默认(存在不替换,不存在安装最新版)第三方工具生成
pip freeze 会附带上一些不需要的包,以及某些包依赖的包~
pipreqs 自动分析项目中引用的包。对Django项目自动构建的时候忽略了Mysql包,版本也很奇怪;而且联网搜索的时候遇到404就报错跳出了😂
pigar 功能同上,会显示包被项目文件引用的地方(搜索下就能解决的问题啊= =感觉是伪需求),404的问题也存在
pip-tools 通过第三方文件生成requirements.txt,讲道理为什么不直接写呢,要通过第三方包来做一层转换
推荐用法
一般项目会分为开发环境,测试环境,生产环境等……依赖的包会不同。推荐在文件夹下为每个环境建立一个requirements.txt文件。公有的包存在base.txt供引用
➜ meeting git:(sync) ✗ tree requirements -hrequirements├── [ 286] base.txt├── [ 80] local.txt└── [ 28] production.txt由于上面提到的工具并不好用~还是推荐手动维护依赖列表。毕竟pip安装后马上去编辑下依赖文件也不是什么麻烦事
setup.py 与 requirements.txt 区别
setup.py 这个文件是用来管理模块的,你可以将你的项目打包为模块上传到 pypi 中,也同样能将项目作为模块放入python 的系统加载模块目录下。
requiremens.txt 这个文件是列举你这个项目引用了哪些非本项目的依赖的,除此之外,没有其他作用。
因此,可以看出这两个项目其实并没有冲突关系,而且有很大共存的必要。
有这两种功能都需要的么?
必须有啊,而且还很多,例如 Flask,他就支持两种方式:
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果疑问大家可以留言交流,谢谢大家对的支持。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
requirements.txt用来记录项目所有的依赖包和版本号,只需要一个简单的pip命令就能完成。pipfreeze>requirements.txt然后就
一起开发项目的时候总是要搭建环境和部署环境的,这个时候必须得有个python第三方包的list,一般都叫做requirements.txt。如果一个项目使用时v
如果要用某个开源框架,需要安装多个依赖包可以如下操作:如依赖文件形式如下(可以不要版本号):txt文件名为requirements.txt,内容为:sklear
获取依赖包:第一种方法:获取环境中所有安装的包打开命令提示符,在某条路径下输入pipfreeze>./requirements.txt这时就会生成一个requi
1、安装所需工具pipinstallpipreqs2、进入到python项目主目录pipreqs./3、完成上面命令会生成requirements.txt4、s