【Python】一键查询依赖生成文件 requirements.txt

简介: 【Python】一键查询依赖生成文件 requirements.txt

前言

我们在自己开发 Python 项目过程中(没有使用虚拟环境),最后做完项目再整理 requirements.txt 都是很麻烦的事。或者是从网上克隆的别人的项目,但是却没有 requirements.txt ,需要自己手动单独安装依赖,都是很痛苦的一件事。

下面我将要介绍一种 python 工具 pipreqs,实现速查询项目依赖并生成 requirements.txt

官网:bndr/pipreqs: pipreqs

安装使用

# 安装
pip install pipreqs
# 使用(Linux)
pipreqs ./
# 使用(Windows)
pipreqs ./ --encoding=utf-8 
# 成功生成文件 ./requirements.txt

补充

pip freeze

# 生成依赖文件
pip freeze > requirements.txt
# 一键安装依赖
pip install -r requirements.txt

pip freeze 只会保存使用 pip install 安装在环境中的软件包。

pip freeze 会保存环境中的所有软件包,包括当前项目中未使用的软件包(如果没有使用虚拟环境)。

conda

conda 安装 requirement.txt 依赖

可以使用如下命令使用 conda 安装 requirement.txt 依赖

conda install --yes --file requirements.txt

但是如果里面有包是不可用的,会抛出“无包错误”,可以使用如下命令

while read requirement; do conda install --yes $requirement; done < requirements.txt

如果想要在 conda 命令无效时使用 pip 命令来代替,那么使用如下命令

while read requirement; do conda install --yes {
   mathJaxContainer[0]}requirement; done < requirements.txt

注意:上面两段代码都是 linux shell 语法,windows 需要替换为其他语法

conda 导出虚拟环境并重新导入

如果是使用 conda 创建的虚拟环境,也可以使用 freeze.yml 文件导出虚拟环境

conda env export > freeze.yml

创建刚才导出的虚拟环境

conda env create -f freeze.yml

参考文章

pipreqs使用笔记

pipreqs——一键查询python项目依赖并生成requirements.txt文件_wx5d2c1d4b4629a的技术博客_51CTO博客

使用conda安装requirement.txt指定的依赖包conda requirements烤粽子的博客-CSDN博客

python - Install only available packages using "conda install --yes --file requirements.txt" without error - Stack Overflow

目录
相关文章
|
18天前
|
安全 Linux 数据安全/隐私保护
python知识点100篇系列(15)-加密python源代码为pyd文件
【10月更文挑战第5天】为了保护Python源码不被查看,可将其编译成二进制文件(Windows下为.pyd,Linux下为.so)。以Python3.8为例,通过Cython工具,先写好Python代码并加入`# cython: language_level=3`指令,安装easycython库后,使用`easycython *.py`命令编译源文件,最终生成.pyd文件供直接导入使用。
python知识点100篇系列(15)-加密python源代码为pyd文件
|
3天前
|
弹性计算 Linux iOS开发
Python 虚拟环境全解:轻松管理项目依赖
本文详细介绍了 Python 虚拟环境的概念、创建和使用方法,包括 `virtualenv` 和 `venv` 的使用,以及最佳实践和注意事项。通过虚拟环境,你可以轻松管理不同项目的依赖关系,避免版本冲突,提升开发效率。
|
23天前
|
Linux 区块链 Python
Python实用记录(十三):python脚本打包exe文件并运行
这篇文章介绍了如何使用PyInstaller将Python脚本打包成可执行文件(exe),并提供了详细的步骤和注意事项。
44 1
Python实用记录(十三):python脚本打包exe文件并运行
|
16天前
|
Java Python
> python知识点100篇系列(19)-使用python下载文件的几种方式
【10月更文挑战第7天】本文介绍了使用Python下载文件的五种方法,包括使用requests、wget、线程池、urllib3和asyncio模块。每种方法适用于不同的场景,如单文件下载、多文件并发下载等,提供了丰富的选择。
|
17天前
|
数据安全/隐私保护 流计算 开发者
python知识点100篇系列(18)-解析m3u8文件的下载视频
【10月更文挑战第6天】m3u8是苹果公司推出的一种视频播放标准,采用UTF-8编码,主要用于记录视频的网络地址。HLS(Http Live Streaming)是苹果公司提出的一种基于HTTP的流媒体传输协议,通过m3u8索引文件按序访问ts文件,实现音视频播放。本文介绍了如何通过浏览器找到m3u8文件,解析m3u8文件获取ts文件地址,下载ts文件并解密(如有必要),最后使用ffmpeg合并ts文件为mp4文件。
|
2天前
|
测试技术 API 数据安全/隐私保护
Python连接到Jira实例、登录、查询、修改和创建bug
通过使用Python和Jira的REST API,可以方便地连接到Jira实例并进行各种操作,包括查询、修改和创建Bug。`jira`库提供了简洁的接口,使得这些操作变得简单易行。无论是自动化测试还是开发工作流的集成,这些方法都可以极大地提高效率和准确性。希望通过本文的介绍,您能够更好地理解和应用这些技术。
8 0
|
23天前
|
JSON 数据格式 Python
Python实用记录(十四):python统计某个单词在TXT/JSON文件中出现的次数
这篇文章介绍了一个Python脚本,用于统计TXT或JSON文件中特定单词的出现次数。它包含两个函数,分别处理文本和JSON文件,并通过命令行参数接收文件路径、目标单词和文件格式。文章还提供了代码逻辑的解释和示例用法。
31 0
Python实用记录(十四):python统计某个单词在TXT/JSON文件中出现的次数
|
23天前
|
Python
Python实用记录(十二):文件夹下所有文件重命名以及根据图片路径保存到新路径下保存
这篇文章介绍了如何使用Python脚本对TTK100_VOC数据集中的JPEGImages文件夹下的图片文件进行批量重命名,并将它们保存到指定的新路径。
31 0
|
12天前
|
安全 数据处理 开发者
Python中的多线程编程:从入门到精通
本文将深入探讨Python中的多线程编程,包括其基本原理、应用场景、实现方法以及常见问题和解决方案。通过本文的学习,读者将对Python多线程编程有一个全面的认识,能够在实际项目中灵活运用。
|
6天前
|
设计模式 开发者 Python
Python编程中的设计模式:工厂方法模式###
本文深入浅出地探讨了Python编程中的一种重要设计模式——工厂方法模式。通过具体案例和代码示例,我们将了解工厂方法模式的定义、应用场景、实现步骤以及其优势与潜在缺点。无论你是Python新手还是有经验的开发者,都能从本文中获得关于如何在实际项目中有效应用工厂方法模式的启发。 ###