全网整合营销服务商

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

免费咨询热线: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使用小结  # 第三方  # 两种  # 必不可少  # 如果你  # 也不  # 让你  # 你可以  # 就能  # 不需要  # 他就  # 这两个  # 也很  # 不存在  # 可以直接  # 你这个  # 可以看出  # 所示  # 这篇文章  # 来做  # 能将 


相关文章: 模具网站制作流程,如何找模具客户?  网站制作话术技巧,网站推广做的好怎么话术?  Android滚轮选择时间控件使用详解  长沙企业网站制作哪家好,长沙水业集团官方网站?  济南网站建设制作公司,室内设计网站一般都有哪些功能?  如何确认建站备案号应放置的具体位置?  如何快速查询网站的真实建站时间?  教程网站设计制作软件,怎么创建自己的一个网站?  GML (Geography Markup Language)是什么,它如何用XML来表示地理空间信息?  宝塔面板如何快速创建新站点?  如何快速查询域名建站关键信息?  一键网站制作软件,义乌购一件代发流程?  html制作网站的步骤有哪些,iapp如何添加网页?  上海制作企业网站有哪些,上海有哪些网站可以让企业免费发布招聘信息?  建站主机服务器选购指南:轻量应用与VPS配置解析  建站之星多图banner生成与模板自定义指南  如何快速使用云服务器搭建个人网站?  建站主机核心功能解析:服务器选择与网站搭建流程指南  在线教育网站制作平台,山西立德教育官网?  建站VPS推荐:2025年高性能服务器配置指南  怎么用手机制作网站链接,dw怎么把手机适应页面变成网页?  南京网站制作费用,南京远驱官方网站?  如何快速辨别茅台真假?关键步骤解析  详解ASP.NET 生成二维码实例(采用ThoughtWorks.QRCode和QrCode.Net两种方式)  网站制作软件有哪些,制图软件有哪些?  网站微信制作软件,如何制作微信链接?  厦门模型网站设计制作公司,厦门航空飞机模型掉色怎么办?  公众号网站制作网页,微信公众号怎么制作?  免费网站制作模板下载,除了易企秀之外还有什么H5平台可以制作H5长页面,最好是免费的?  家族网站制作贴纸教程视频,用豆子做粘帖画怎么制作?  jQuery 常见小例汇总  如何选择网络建站服务器?高效建站必看指南  微信小程序 五星评分(包括半颗星评分)实例代码  如何制作网站标识牌,动态网站如何制作(教程)?  手机网站制作与建设方案,手机网站如何建设?  网站制作价目表怎么做,珍爱网婚介费用多少?  学校为何禁止电信移动建设网站?  网站建设制作、微信公众号,公明人民医院怎么在网上预约?  网页设计网站制作软件,microsoft office哪个可以创建网页?  网站制作费用多少钱,一个网站的运营,需要哪些费用?  孙琪峥织梦建站教程如何优化数据库安全?  如何在阿里云香港服务器快速搭建网站?  如何快速搭建响应式可视化网站?  用v-html解决Vue.js渲染中html标签不被解析的问题  如何快速生成凡客建站的专业级图册?  如何自定义建站之星模板颜色并下载新样式?  怀化网站制作公司,怀化新生儿上户网上办理流程?  如何在建站之星网店版论坛获取技术支持?  如何快速搭建高效可靠的建站解决方案?  如何在IIS管理器中快速创建并配置网站? 

您的项目需求

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