Python第三方库导出与批量安装的详细教程

 更新时间:2026年01月18日 15:03:40   作者:小满大王i  
本文详细介绍了如何一键导出Python项目的第三方依赖包版本,包括导出环境中的所有第三方包和导出指定目录下所有Python脚本依赖的第三方包,并提供了详细的步骤和注意事项,需要的朋友可以参考下

当需要导出指定Python项目的第三方安装依赖包版本的时候,如果一个一个去找是非常麻烦浪费时间的事情,本文将教大家如何一键导出,附上详细教程。

一、前提准备

  1. 确保已安装 Python 环境,且 pip 已添加到系统环境变量(可通过 python --versionpip --version 验证)。
  2. 导出指定脚本依赖时,需额外安装 pipreqs 工具,安装命令:pip install pipreqs

二、导出环境中的所有第三方包

该方式会导出当前 Python 环境(虚拟环境/全局环境)中已安装的所有第三方库,适用于备份完整环境或迁移到其他设备。

1、打开终端(Windows cmd/PowerShell,Mac/Linux 终端)。
2、执行导出命令,将依赖列表保存到 requirements.txt 文件(文件名可自定义,建议用默认名):

# 基础导出(推荐,包含包名和精确版本号)
pip freeze > requirements.txt

# 可选:导出时忽略指定包(如无需导出 pip 本身)
pip freeze | findstr /v "pip" > requirements.txt  # Windows
pip freeze | grep -v "pip" > requirements.txt     # Mac/Linux

3、执行完成后,当前目录会生成 requirements.txt 文件,内容格式为 包名==版本号(如 requests==2.31.0)。

三、导出指定目录下所有Python脚本依赖的第三方包

该方式仅分析指定目录中所有 .py 脚本实际导入的第三方库(不含系统库和未使用的包),适用于精简项目依赖、避免冗余。 注意事项:如果第三方库还依赖了其他库,可能会不一定完整!!!

1、打开终端,切换到目标 Python 脚本所在的根目录(如脚本在 D:\project\python_scripts,则执行 cd D:\project\python_scripts)。

2、执行 pipreqs 命令生成依赖文件:

# 基础用法:分析当前目录及子目录下所有脚本
pipreqs . --encoding=utf8

# 关键参数说明
# . :表示当前目录(可替换为具体路径,如 pipreqs D:\project\python_scripts)
# --encoding=utf8 :解决中文注释导致的编码错误
# --force :强制覆盖已存在的 requirements.txt 文件(如需更新依赖时使用)

3、执行成功后,目标目录会生成 requirements.txt 文件,仅包含脚本实际依赖的第三方包(如脚本用了 requestspandas,则仅列出这两个包)。

4、案例:

E:\Python\> pipreqs ./ --encoding=utf-8
INFO: Not scanning for jupyter notebooks.  # 看到这个表示正在查找,不是报错这个时候不要关了
WARNING: Import named "fastapi" not found locally. Trying to resolve it at the PyPI server.
WARNING: Import named "fastapi" was resolved to "fastapi:0.121.3" package (https://pypi.org/project/fastapi/).
Please, verify manually the final list of requirements.txt to avoid possible dependency confusions.
WARNING: Import named "uvicorn" not found locally. Trying to resolve it at the PyPI server.
WARNING: Import named "uvicorn" was resolved to "uvicorn:0.38.0" package (https://pypi.org/project/uvicorn/).
Please, verify manually the final list of requirements.txt to avoid possible dependency confusions.
INFO: Successfully saved requirements file in ./requirements.txt

运行结果:

fastapi==0.121.3
pandas==1.4.2
pypinyin==0.46.0
uvicorn==0.38.0

5、常见问题解决:

  • 若提示“PermissionError”,在命令末尾添加 --force 参数强制生成。
  • 若分析不完整,检查脚本是否有动态导入(如 __import__),此类情况需手动补充包名到文件中。

四、批量安装导出的第三方包

无论通过哪种方式导出的 requirements.txt,均可用以下命令批量安装所有依赖,快速复现环境。

操作步骤

  1. 将导出的 requirements.txt 文件复制到目标环境的任意目录(如桌面)。
  2. 打开终端,切换到 requirements.txt 所在目录(如 cd Desktop)。
  3. 执行安装命令:
# 基础安装(使用官方源)
pip install -r requirements.txt

# 推荐:使用国内镜像源加速(解决下载慢/超时问题)
pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple
  1. 等待命令执行完成,所有依赖包会自动安装到当前 Python 环境中。

可选优化

  • 安装指定版本的包:若需修改版本,可直接编辑 requirements.txt 中的 ==版本号(如 requests>=2.20.0 表示安装 2.20.0 及以上版本)。
  • 升级已安装包:pip install --upgrade -r requirements.txt

五、总结与注意事项

  1. 全环境导出(pip freeze)适合完整环境迁移,指定目录导出(pipreqs)适合项目依赖精简,根据需求选择即可。
  2. 虚拟环境建议:开发项目时优先使用虚拟环境(venv/conda),避免全局环境依赖冲突,导出时仅需激活对应虚拟环境再执行命令。
  3. 版本兼容性:导出的 requirements.txt 包含精确版本号,安装后可保证环境一致性,避免因版本差异导致的代码报错。

以上就是Python第三方库导出与批量安装的详细教程的详细内容,更多关于Python第三方库导出与安装的资料请关注脚本之家其它相关文章!

相关文章

  • 解决plt.savefig()和plt.show()方法得到的图片不一样问题

    解决plt.savefig()和plt.show()方法得到的图片不一样问题

    这篇文章主要介绍了解决plt.savefig()和plt.show()方法得到的图片不一样问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-08-08
  • Tensorflow中TFRecord生成与读取的实现

    Tensorflow中TFRecord生成与读取的实现

    TFRecord格式的文件存储形式会很合理的帮我们存储数据,本文主要介绍了Tensorflow中TFRecord生成与读取的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-05-05
  • Python descriptor(描述符)的实现

    Python descriptor(描述符)的实现

    这篇文章主要介绍了Python descriptor(描述符)的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-11-11
  • Spark处理数据排序问题如何避免OOM

    Spark处理数据排序问题如何避免OOM

    这篇文章主要介绍了Spark处理数据排序问题如何避免OOM,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-05-05
  • Python设置matplotlib.plot的坐标轴刻度间隔以及刻度范围

    Python设置matplotlib.plot的坐标轴刻度间隔以及刻度范围

    这篇文章主要介绍了Python设置matplotlib.plot的坐标轴刻度间隔以及刻度范围,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-06-06
  • yolov5特征图可视化的使用步骤

    yolov5特征图可视化的使用步骤

    这篇文章主要介绍了yolov5特征图可视化,本文通过实例代码给大家介绍yolov5特征图可视化使用方法,通过实例代码给大家介绍的非常详细,需要的朋友可以参考下
    2022-03-03
  • 超详细注释之OpenCV更改像素与修改图像通道

    超详细注释之OpenCV更改像素与修改图像通道

    这篇文章主要介绍了OpenCV更改像素与修改图像通道,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-09-09
  • Pandas中DataFrame交换列顺序的方法实现

    Pandas中DataFrame交换列顺序的方法实现

    这篇文章主要介绍了Pandas中DataFrame交换列顺序的方法实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-12-12
  • python编程PyAutoGUI库使用与安装简介

    python编程PyAutoGUI库使用与安装简介

    这篇文章主要为大家介绍了python编程中PyAutoGUI库的使用与安装简单介绍,文中含有视频详解,有需要的朋友可以借鉴参考下,希望能够有所帮助
    2021-10-10
  • Python链表排序相关问题解法示例

    Python链表排序相关问题解法示例

    这篇文章主要为大家介绍了Python链表排序相关问题解法示例,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2024-01-01

最新评论