iis服务器助手广告
返回顶部
首页 > 资讯 > 后端开发 > Python >使用【Python】快速生成本项目的requeirments.txt
  • 691
分享到

使用【Python】快速生成本项目的requeirments.txt

pythongitlinux 2023-09-05 15:09:09 691人浏览 泡泡鱼

Python 官方文档:入门教程 => 点击学习

摘要

在python项目中,我们通常需要使用许多第三方库来提供额外的功能和工具。但是,直接将这些库上传到git仓库并不是一种好的做法,因为这会使得代码库变得过于臃肿,并且很难管理。此外,有时候在部署应用程序

python项目中,我们通常需要使用许多第三方库来提供额外的功能和工具。但是,直接将这些库上传到git仓库并不是一种好的做法,因为这会使得代码库变得过于臃肿,并且很难管理。此外,有时候在部署应用程序时也需要安装特定版本的依赖项。

这时候,就可以使用requirements.txt文件来管理项目所需的依赖项。该文件列出了项目所需的所有依赖项及其版本号,使得其他人可以轻松地安装和运行该项目所需的所有依赖项。使用pip命令读取该文件,可以自动下载并安装所有列出的依赖项,这大大简化了项目启动/部署的流程。

因此,生成requirements.txt文件对于管理Python项目的依赖项非常重要,它能够确保项目的可重复性、可移植性和可维护性。
在这里插入图片描述

1.使用pipreqs生成requeirments.txt

在项目根目录下打开终端,运行以下命令安装pipreqs:

pip install pipreqs

运行以下命令生成requirements.txt文件:

pipreqs . --encoding=utf8 --force

其中,.表示当前目录,–encoding=utf8指定编码为UTF-8,–force选项强制覆盖已存在的requirements.txt文件。

等待执行完毕,即可在项目根目录下看到生成的requirements.txt文件。
在这里插入图片描述

2.使用pip

要使用pip生成当前Python项目的requirements.txt文件,请按照以下步骤操作:

确保你已经安装了pip和虚拟环境。

在虚拟环境中打开终端,并进入到项目的根目录下。

运行以下命令,生成包含所有依赖项的requirements.txt文件:

pip freeze > requirements.txt

执行完毕后,你可以在项目的根目录下看到一个名为requirements.txt的文本文件,其中包含了所有依赖项及其版本号。
在这里插入图片描述

需要注意的是,pip freeze命令会将所有安装的包及其版本信息输出到控制台。通过重定向符号>将输出结果写入到文件中,就能够生成requirements.txt文件。但是,该文件中可能包含一些不必要的依赖项,如系统自带的库、测试工具等。因此,在使用生成的requirements.txt文件时,建议手动检查并删除不必要的依赖项,以减小项目体积。
以下是生成的requirements.txt文件,可以看到,有好多不必要的依赖项被生成

absl-py==1.0.0addict==2.4.0aioHttp==3.7.4.post0alembic==1.8.1arGon2-cffi @ file:///opt/conda/conda-bld/argon2-cffi_1645000214183/workargon2-cffi-bindings @ file:///C:/ci/argon2-cffi-bindings_1644569848815/workastunparse==1.6.3async-timeout==3.0.1attrs @ file:///opt/conda/conda-bld/attrs_1642510447205/workbackcall @ file:///home/ktietz/src/ci/backcall_1611930011877/workbeautifulsoup4 @ file:///tmp/build/80754af9/beautifulsoup4_1631874778482/workbilibili-api==5.1.2bleach @ file:///opt/conda/conda-bld/bleach_1641577558959/workblinker==1.5cachetools==5.0.0certifi @ file:///C:/b/abs_85o_6fm0se/croot/certifi_1671487778835/work/certificffi @ file:///C:/ci_310/cffi_1642682485096/workchardet==4.0.0charset-nORMalizer==2.0.12click @ file:///C:/ci/click_1646038601470/workcloudpickle @ file:///tmp/build/80754af9/cloudpickle_1632508026186/workcolorama @ file:///tmp/build/80754af9/colorama_1607707115595/workcryptography @ file:///C:/ci/cryptography_1652101770956/workcycler==0.11.0cytoolz==0.11.0dask==1.1.4debugpy @ file:///C:/ci/debugpy_1637091911212/workdecorator @ file:///opt/conda/conda-bld/decorator_1643638310831/workdefusedxml @ file:///tmp/build/80754af9/defusedxml_1615228127516/workdnspython==2.3.0docopt==0.6.2einops==0.4.1email-validator==1.3.1entrypoints==0.3fastJSONschema @ file:///tmp/build/80754af9/python-fastjsonschema_1620414857593/work/distflask==2.2.3Flask-Email==1.4.4Flask-Mail==0.9.1Flask-Migrate==3.1.0Flask-Script==2.0.6Flask-sqlAlchemy @ file:///tmp/build/80754af9/flask-sqlalchemy_1616180561581/workFlask-WTF==1.1.1flatbuffers==23.1.21fonttools==4.30.0fvcore==0.1.5.post20220305gast==0.4.0google-auth==2.6.5google-auth-oauthlib==0.4.6google-pasta==0.2.0greenlet @ file:///C:/ci/greenlet_1628888257991/workgrpcio==1.45.0grpcio-tools==1.45.0h5py @ file:///C:/ci/h5py_1659089886851/workidna==3.3imagecodecs @ file:///C:/ci/imagecodecs_1635529223557/workimageio @ file:///tmp/build/80754af9/imageio_1617700267927/workimportlib-metadata @ file:///C:/ci/importlib-metadata_1648562631189/workimportlib-resources==5.9.0iopath==0.1.9ipykernel @ file:///C:/ci/ipykernel_1647000985174/work/dist/ipykernel-6.9.1-py3-none-any.whlipython @ file:///C:/ci/ipython_1643800131373/workipython-genutils @ file:///tmp/build/80754af9/ipython_genutils_1606773439826/workipywidgets @ file:///tmp/build/80754af9/ipywidgets_1634143127070/workitsdangerous @ file:///tmp/build/80754af9/itsdangerous_1621432558163/workjedi @ file:///C:/ci/jedi_1644297241925/workJinja2 @ file:///C:/b/abs_7cdis66kl9/croot/jinja2_1666908141852/workjoblib @ file:///C:/b/abs_e60_bwl1v6/croot/joblib_1666298845728/workjsonschema @ file:///Users/ktietz/demo/mc3/conda-bld/jsonschema_1630511932244/workjupyter==1.0.0jupyter-client @ file:///opt/conda/conda-bld/jupyter_client_1643638337975/workjupyter-console @ file:///opt/conda/conda-bld/jupyter_console_1647002188872/workjupyter-core @ file:///C:/ci/jupyter_core_1646976467633/workjupyterlab-pygments @ file:///tmp/build/80754af9/jupyterlab_pygments_1601490720602/workjupyterlab-widgets @ file:///tmp/build/80754af9/jupyterlab_widgets_1609884341231/workkeras==2.11.0kiwisolver @ file:///C:/ci/kiwisolver_1653274189334/worklabelme==3.16.7libclang==15.0.6.1loguru @ file:///C:/ci/loguru_1643616607274/worklxml==4.6.5Mako==1.2.2markdown==3.3.6MarkupSafe @ file:///C:/ci/markupsafe_1654508076077/workmatplotlib==3.5.1matplotlib-inline @ file:///tmp/build/80754af9/matplotlib-inline_1628242447089/workmistune @ file:///C:/ci/mistune_1594373272338/workmkl-fft==1.3.1mkl-random @ file:///C:/ci/mkl_random_1626186163140/workmkl-service==2.4.0mmcv==1.6.2multidict==6.0.2nbclient @ file:///tmp/build/80754af9/nbclient_1645431659072/worknbconvert @ file:///C:/ci/nbconvert_1649759177374/worknbformat @ file:///C:/ci/nbformat_1649845122517/worknest-asyncio @ file:///C:/ci/nest-asyncio_1649848126026/worknetworkx==2.2notebook @ file:///C:/ci/notebook_1645002740769/worknumpy @ file:///C:/ci/numpy_and_numpy_base_1649782933444/workoauthlib==3.2.0OpenCV-python==4.5.5.64openslide-python==1.2.0opt-einsum==3.3.0packaging @ file:///tmp/build/80754af9/packaging_1637314298585/workpandas==1.3.5pandocfilters @ file:///opt/conda/conda-bld/pandocfilters_1643405455980/workparso @ file:///opt/conda/conda-bld/parso_1641458642106/workpickleshare @ file:///tmp/build/80754af9/pickleshare_1606932040724/workPillow==9.0.1pipreqs==0.4.11portalocker==2.4.0prettytable==3.3.0prometheus-client @ file:///opt/conda/conda-bld/prometheus_client_1643788673601/workprompt-toolkit @ file:///tmp/build/80754af9/prompt-toolkit_1633440160888/workprotobuf==3.19.6pyasn1==0.4.8pyasn1-modules==0.2.8pycparser @ file:///tmp/build/80754af9/pycparser_1636541352034/workpyecharts==1.9.1pygame==2.2.0Pygments @ file:///opt/conda/conda-bld/pygments_1644249106324/workPyMysql @ file:///C:/ci/pymysql_1610464946597/workpyparsing==3.0.7PyQt5-Qt5==5.15.2PyQt5-sip==12.9.1pyrsistent @ file:///C:/ci/pyrsistent_1636093257833/workpytesseract==0.3.10python-dateutil @ file:///tmp/build/80754af9/python-dateutil_1626374649649/workpytz @ file:///C:/windows/TEMP/abs_90eacd4e-8eff-491e-b26e-f707eba2cbe1ujvbhqz1/croots/recipe/pytz_1654762631027/workPyWavelets @ file:///C:/ci/pywavelets_1648728036674/workpywin32==302pywinpty @ file:///C:/ci_310/pywinpty_1644230983541/work/target/wheels/pywinpty-2.0.2-cp37-none-win_amd64.whlPyYAML==6.0pyzMQ @ file:///C:/ci/pyzmq_1638435182681/workqtconsole @ file:///opt/conda/conda-bld/qtconsole_1649078897110/workQtPy @ file:///opt/conda/conda-bld/qtpy_1649073884068/workregex==2022.10.31requests==2.27.1requests-oauthlib==1.3.1rsa==4.8scikit-image @ file:///C:/ci/scikit-image_1648196140109/workscikit-learn @ file:///C:/ci/scikit-learn_1642599122269/workscipy @ file:///C:/ci/scipy_1641555141383/workseaborn==0.11.2Send2Trash @ file:///tmp/build/80754af9/send2trash_1632406701022/worksip==4.19.13six @ file:///tmp/build/80754af9/six_1644875935023/worksoupsieve @ file:///tmp/build/80754af9/soupsieve_1636706018808/workSQLAlchemy @ file:///C:/Windows/Temp/abs_f8661157-660b-49bb-a790-69ab9f3b8f7c8a8s2psb/croots/recipe/sqlalchemy_1657867864564/worktabulate==0.8.9tensorboard==2.11.2tensorboard-data-server==0.6.1tensorboard-plugin-wit==1.8.1Tensorflow==2.11.0tensorflow-estimator==2.11.0tensorflow-intel==2.11.0tensorflow-io-GCs-filesystem==0.31.0termcolor==1.1.0terminado @ file:///C:/ci/terminado_1644322782754/worktestpath @ file:///tmp/build/80754af9/testpath_1624638946665/workthop==0.0.31.post2005241907threadpoolctl @ file:///Users/ktietz/demo/mc3/conda-bld/threadpoolctl_1629802263681/worktifffile @ file:///tmp/build/80754af9/tifffile_1627275862826/worktimm==0.6.7toolz @ file:///tmp/build/80754af9/toolz_1636545406491/worktorch==1.9.1+cu102torchaudio==0.9.1torchmetrics==0.9.3torchstat==0.0.7torchvision==0.10.1+cu102tornado @ file:///C:/ci/tornado_1606935947090/worktqdm==4.63.0traitlets @ file:///tmp/build/80754af9/traitlets_1636710298902/worktyping_extensions @ file:///opt/conda/conda-bld/typing_extensions_1647553014482/workurllib3==1.26.9wcwidth @ file:///Users/ktietz/demo/mc3/conda-bld/wcwidth_1629357192024/workWEBencodings==0.5.1Werkzeug==2.2.3widgetsnbextension @ file:///C:/ci/widgetsnbextension_1645009553925/workwin32-setctime @ file:///home/tkoch/Workspace/win32_setctime/win32_setctime_1643630045199/workwincertstore==0.2wrapt==1.15.0WTForms==3.0.1xlwt==1.3.0yacs==0.1.8yapf==0.32.0yarg==0.1.9yarl==1.7.2zipp @ file:///C:/ci/zipp_1652274072582/work

来源地址:https://blog.csdn.net/qq_42076902/article/details/129417568

--结束END--

本文标题: 使用【Python】快速生成本项目的requeirments.txt

本文链接: https://www.lsjlt.com/news/395584.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 使用【Python】快速生成本项目的requeirments.txt
    在Python项目中,我们通常需要使用许多第三方库来提供额外的功能和工具。但是,直接将这些库上传到Git仓库并不是一种好的做法,因为这会使得代码库变得过于臃肿,并且很难管理。此外,有时候在部署应用程序...
    99+
    2023-09-05
    python git linux
  • Python怎么快速生成本项目的requeirments.txt
    在Python项目中,我们通常需要使用许多第三方库来提供额外的功能和工具。但是,直接将这些库上传到Git仓库并不是一种好的做法,因为这会使得代码库变得过于臃肿,并且很难管理。此外,有时候在部署应用程序时也需要安装特定版本的依赖项。这时候,就...
    99+
    2023-05-14
    Python
  • Python如何快速生成本项目的requeirments.txt实现
    目录1.使用pipreqs生成requeirments.txt2.使用pip在Python项目中,我们通常需要使用许多第三方库来提供额外的功能和工具。但是,直接将这些库上传到Git仓...
    99+
    2023-03-14
    Python 生成本项目的requeirments.txt Python 生成requeirments.txt
  • 如何快速生成一个全栈Web 项目
    本篇内容主要讲解“如何快速生成一个全栈Web 项目”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“如何快速生成一个全栈Web 项目”吧!Goxygen 致力于节省...
    99+
    2024-04-02
  • 如何使用Python快速生成gif图
    目录前言imageio介绍imageio安装合成gif图读取特殊url图片总结前言 gif图就是动态图,它的原理和视频有点类似,也是通过很多静态图片合成的.本篇文章主要介绍,如何利用...
    99+
    2024-04-02
  • springboot结合mybatis-plus快速生成项目模板的方法
    目录mybatis-plus简介:项目模板1、项目概览2、美化swagger-uimybatis-plus简介: Mybatis-Plus(简称MP)是一个 Mybatis 的增强...
    99+
    2024-04-02
  • C#使用DoddleReport快速生成报表
    有的时候,我们需要对一堆数据进行统计分析后生成HTML或Excel格式报表。本来这并不是一件很难的事,但确是件比较麻烦的事情。最令人头痛的是遇到领导下发的临时紧急任务的时候,往往领导...
    99+
    2024-04-02
  • 项目打包指南:使用PyCharm快速打包你的项目
    PyCharm项目打包指南:快速上手打包你的项目 导言:在软件开发过程中,打包是将代码和资源文件整合成可执行文件或者发布包的重要步骤之一。打包可以方便地将项目分享给他人,同时也有助于项目的部署和维护。PyCharm作为一款功能强...
    99+
    2024-02-03
    pycharm 上手 项目打包
  • 怎么使用Python快速简单生成矩形词云
    本文小编为大家详细介绍“怎么使用Python快速简单生成矩形词云”,内容详细,步骤清晰,细节处理妥当,希望这篇“怎么使用Python快速简单生成矩形词云”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。效果实现打开I...
    99+
    2023-07-05
  • JavaScript实现封装一个快速生成目录树的全局脚本
    目录说在前面思路分析功能实现一、使用命令行交互来获取所需参数二、编写目录文件树生成逻辑三、封装成全局插件四、插件安装使用源码地址说在前面 我们在很多地方都可以看到有这样的目录树结构...
    99+
    2023-03-15
    JavaScript生成目录树 JavaScript目录树
  • Vue如何使用Array.from快速生成数组
    这篇文章给大家分享的是有关Vue如何使用Array.from快速生成数组的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。使用 Array.from 快速生成数组一般我们生成一个有规...
    99+
    2024-04-02
  • Excel如何使用F11快速生成图表
    这篇文章主要介绍了Excel如何使用F11快速生成图表,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。F11快速生成图表如果有这样一批数据,如何使用快捷键,一次性生成一张图表呢...
    99+
    2023-06-27
  • 如何在 Windows 上使用 Python API 快速生成二维码?
    Python 是一种强大的编程语言,它可以用于各种各样的应用场景。其中,生成二维码是 Python 中的一个非常实用的功能。本文将介绍如何在 Windows 上使用 Python API 快速生成二维码。 一、安装 Python 在使用 P...
    99+
    2023-05-26
  • 使用IDEA怎么快速生成注释文档
    本篇文章给大家分享的是有关使用IDEA怎么快速生成注释文档,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。IDEA提供了快捷方式来生成指定的代码。首先我们要编写好代码的模板。打开...
    99+
    2023-06-15
  • JavaScript如何实现封装一个快速生成目录树的全局脚本
    本篇内容主要讲解“JavaScript如何实现封装一个快速生成目录树的全局脚本”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“JavaScript如何实现封装一个快速生成目录树的全局脚本”吧!说在...
    99+
    2023-07-05
  • Excel如何使用Ctrl+T快速生成超级表
    这篇文章将为大家详细讲解有关Excel如何使用Ctrl+T快速生成超级表,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。Ctrl+T快速生成超级表超级表在实际中,其实是很有用的,比如说:下拉数据仍然可以看到...
    99+
    2023-06-27
  • 新鲜速递:Spring Boot 3 项目快速集成 Spring Security 6的方法
    准备 Spring Boot 3正式版本已发版了半个月,Spring Security6也一并更新,但是网络上的相关中文文档较少,盲目进行集成容易出错,所以本文讲如何快速集成。这里不再赘述Spring Boot3和Spring Securi...
    99+
    2023-08-25
    spring spring boot java
  • 使用JAVA怎么快速搭建一个springboot项目
    今天就跟大家聊聊有关使用JAVA怎么快速搭建一个springboot项目,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。安装JDK使用的是jdk8,这里使用的是windows10 64...
    99+
    2023-06-06
  • 如何快速的生成一个Python爬虫请求头
    今天就跟大家聊聊有关如何快速的生成一个Python爬虫请求头,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。python可以做什么Python是一种编程语言,内置了许多有效的工具,Py...
    99+
    2023-06-06
  • 手把手教你使用Django + Vue.js 快速构建项目
    目录1. 前言2. 环境准备3. 创建 Django 项目4. 创建 Vue.js 前端项目5. 解决跨域问题6. 整合 Django 和 Vue.js 前端1. 前言 本篇将基于D...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作