当前位置: 首页 > ds >正文

如何只导出python项目的依赖包和版本信息

1.使用 pip freeze(适用于纯净的虚拟环境)

pip freeze > requirements.txt
注意:仅当虚拟环境仅安装项目依赖时推荐,否则会包含无关包。除非你的虚拟环境只有你的项目所需依赖包,没有多余的包,否则无需的包也会给你导出。

2.使用 pipreqs(推荐 - 基于项目代码分析)

安装pip install pipreqs

项目根目录运行:

pipreqs . --encoding=utf8 --force

  • 自动分析 import 语句生成依赖

  • --force:覆盖现有 requirements.txt

  • --encoding=utf8:避免编码错误

3.使用 poetry(适用于 Poetry 管理的项目)

# 导出为 requirements.txt 格式
poetry export -f requirements.txt --output requirements.txt --without-hashes

各方法对比

方法适用场景优点缺点
pip freeze纯净的虚拟环境简单快速可能包含无关依赖
pipreqs任何项目(推荐)仅导出实际使用的依赖可能遗漏动态导入的包
poetry使用 Poetry 管理的项目精确导出声明的主依赖需项目使用 Poetry 构建

常见问题解决

  1. 遗漏依赖:检查是否包含间接依赖,可尝试:pip install pip-chill pip-chill > requirements.txt # 只导出主依赖(不含子依赖

  2. 动态导入包未识别:手动将缺失的包添加到 requirements.txt

建议:优先使用 pipreqs,它能通过代码分析准确捕获项目直接引用的包。

http://www.xdnf.cn/news/14339.html

相关文章:

  • 用bilibili一个讲座视频,生成一本科普书籍
  • 简历模板3——数据挖掘工程师5年经验
  • 走线宽度对高频插入损耗的影响
  • YOLOv8模型剪枝实战:DepGraph(依赖图)方法详解
  • 在 CentOS中安装Docker并安装青龙脚本——笔记
  • 【环境配置】解决linux每次打开终端都需要source .bashrc文件的问题
  • [技巧] 接口优化技巧合集
  • 为什么Sigmoind适用于输出层而不是输入层隐藏层
  • 一起来入门深度学习知识体系
  • RabbitMQ 知识详解(Java版)
  • 【无标题[特殊字符]2025华为行程解锁
  • LeetCode - 852. 山脉数组的峰顶索引
  • Salesforce 推出Marketing Cloud Next营销云
  • 【Tip】工具网站
  • comfyui插件和comfyui mac安装
  • 解决文明6 内存相关内容报错EXCEPTION_ACCESS_VIOLATION
  • uni-app项目实战笔记13--全屏页面的absolute定位布局和fit-content自适应内容宽度
  • volka烹饪常用英语
  • 基于stm32和多种传感器采集心脏数据监测系统
  • 2025年渗透测试面试题总结-浙江东岸检测[实习]安全工程师(题目+回答)
  • Qt下载比较慢
  • Linux 线程深度解析:从内存管理到线程控制的核心机制
  • 苍穹外卖--缓存菜品Spring Cache
  • 在docker中部署mysql
  • 论文略读: LAYERWISE RECURRENT ROUTER FOR MIXTURE-OF-EXPERTS
  • 实现回显服务器(基于UDP)
  • 【Linux系列】HEIC文件类型
  • 使用 vscode 开发 uni-app 项目时如何解决 manifest.json 文件注释报错的问题
  • 学习设计模式《十三》——迭代器模式
  • uniapp打包安卓和ios