全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

详解python中requirements.txt的一切

简介

Python项目中必须包含一个 requirements.txt 文件,用于记录所有依赖包及其精确的版本号。以便新环境部署。

主要的写法如下所示

pip freeze > requirements.txt # 生成requirements.txt
pip 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 -h
requirements
├── [ 286] base.txt
├── [ 80] local.txt
└── [ 28] production.txt

由于上面提到的工具并不好用~还是推荐手动维护依赖列表。毕竟pip安装后马上去编辑下依赖文件也不是什么麻烦事

setup.py 与 requirements.txt 区别

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

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

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

  1. 假如你的项目需要保存为系统模块,或者可安装为系统命令的 setup.py 就必不可少了
  2. 假如你的项目是可以直接运行的,那么 requirements.txt 也是必不可少。
  3. 如果你两种功能都需要,那么就两个文件都不能少。

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

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

  1. 以系统命令的方式启动,在 Flask 0.11.1 中新加入了一个 Click 包,他可以让你 setup 之后以命令的方式运行
  2. 直接运行,传统的 Flask 启动方式一般就是 app.run() 或者 python manage.py runserver

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果疑问大家可以留言交流,谢谢大家对的支持。


# python  # requirements  # requirements.txt  # pip  # python生成requirements.txt的两种方法  # python 中的requirements.txt 文件的使用详情  # python导出requirements.txt的几种方法总结  # python生成requirements.txt文件的两种方法  # Python pip通过requirements.txt 文件安装依赖  # Python如何生成requirements.txt  # python项目下生成requirements.txt方法  # Python requirements.txt的具体使用  # python生成requirements.txt文件的推荐方法  # python项目中requirements.txt的用法实例教程  # Python requirements.txt使用小结  # 第三方  # 两种  # 必不可少  # 如果你  # 也不  # 让你  # 你可以  # 就能  # 不需要  # 他就  # 这两个  # 也很  # 不存在  # 可以直接  # 你这个  # 可以看出  # 所示  # 这篇文章  # 来做  # 能将 


相关文章: 如何在IIS管理器中快速创建并配置网站?  如何处理“XML格式不正确”错误 常见XML well-formed问题解决方法  开封网站制作公司,网络用语开封是什么意思?  网站图片在线制作软件,怎么在图片上做链接?  成都响应式网站开发,dw怎么把手机适应页面变成网页?  网站制作公司排行榜,抖音怎样做个人官方网站  ,交易猫的商品怎么发布到网站上去?  大学网站设计制作软件有哪些,如何将网站制作成自己app?  建站之星在线版空间:自助建站+智能模板一键生成方案  青浦网站制作公司有哪些,苹果官网发货地是哪里?  盘锦网站制作公司,盘锦大洼有多少5G网站?  免费制作海报的网站,哪位做平面的朋友告诉我用什么软件做海报比较好?ps还是cd还是ai这几个软件我都会些我是做网页的?  平台云上自主建站:模板化设计与智能工具打造高效网站  制作销售网站教学视频,销售网站有哪些?  如何在Windows 2008云服务器安全搭建网站?  如何用花生壳三步快速搭建专属网站?  官网自助建站系统:SEO优化+多语言支持,快速搭建专业网站  手机怎么制作网站教程步骤,手机怎么做自己的网页链接?  教学网站制作软件,学习*后期制作的网站有哪些?  ,如何利用word制作宣传手册?  长春网站建设制作公司,长春的网络公司怎么样主要是能做网站的?  简易网站制作视频教程,使用记事本编写一个简单的网页html文件?  制作网站怎么制作,*游戏网站怎么搭建?  Thinkphp 中 distinct 的用法解析  合肥做个网站多少钱,合肥本地有没有比较靠谱的交友平台?  nginx修改上传文件大小限制的方法  如何优化Golang Web性能_Golang HTTP服务器性能提升方法  常州企业建站如何选择最佳模板?  详解jQuery停止动画——stop()方法的使用  高端智能建站公司优选:品牌定制与SEO优化一站式服务  建站主机是否等同于虚拟主机?  定制建站平台哪家好?企业官网搭建与快速建站方案推荐  如何选择香港主机高效搭建外贸独立站?  湖南网站制作公司,湖南上善若水科技有限公司做什么的?  制作国外网站的软件,国外有哪些比较优质的网站推荐?  阿里云高弹*务器配置方案|支持分布式架构与多节点部署  宝塔面板如何快速创建新站点?  网站制作公司排行榜,四大门户网站排名?  交易网站制作流程,我想开通一个网站,注册一个交易网址,需要那些手续?  Swift开发中switch语句值绑定模式  建站168自助建站系统:快速模板定制与SEO优化指南  PHP 500报错的快速解决方法  建站之星后台密码遗忘如何找回?  建站之星收费标准详解:套餐费用及年费价格表一览  广州美橙建站如何快速搭建多端合一网站?  建站之星安装后界面空白如何解决?  建站主机类型有哪些?如何正确选型  视频网站制作教程,怎么样制作优酷网的小视频?  h5在线制作网站电脑版下载,h5网页制作软件?  设计网站制作公司有哪些,制作网页教程? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。