当前位置: 代码网 > it编程>前端脚本>Python > Python实现批量安装依赖的方法详解

Python实现批量安装依赖的方法详解

2026年02月05日 Python 我要评论
在python项目开发中,我们经常需要安装多个依赖库(比如pyqt5、opencv等)。逐个执行pip install命令不仅繁琐,还容易遗漏、出现版本兼容问题。最高效的解决方案是:创建一个requi

在python项目开发中,我们经常需要安装多个依赖库(比如pyqt5、opencv等)。逐个执行pip install命令不仅繁琐,还容易遗漏、出现版本兼容问题。

最高效的解决方案是:创建一个requirements.txt文本文件,手动写入所有需要的库名(可指定版本),然后通过一条命令批量安装所有依赖。本文全程实操,新手也能快速上手。

本文核心:从零教你「创建文件→编写库清单→批量安装→实用拓展」,全程无冗余,直接套用即可。

一、什么是requirements.txt?

requirements.txt 是python项目的「依赖清单文件」,本质是一个纯文本文件,核心作用是:

  • 统一项目依赖,避免“我本地能运行,别人运行报错”的问题;
  • 手动编写需要的库,批量安装/卸载,提升开发效率;
  • 方便项目备份、共享,他人拿到文件后,一键就能配置好和你一致的开发环境。

重点:文件名建议固定为requirements.txt(python生态通用约定,pip工具可直接识别),后缀必须是.txt,不能是.txt.txt(需开启电脑文件后缀显示)。

二、实操步骤:创建+编写requirements.txt

全程以「pycharm项目」为例(适配你的上位机开发环境),两种创建方法,任选一种即可,新手优先选方法1。

方法1:手动创建(最直观,新手首选)

适配场景:新手、不熟悉终端命令,直接通过pycharm图形界面操作,零门槛。

  • 打开你的pycharm项目,定位到「项目根目录」(和你的.py代码文件同级,比如和相机对接、plc通信的核心代码放在一起);
  • 右键点击项目根目录 → 选择「new」→ 点击「text file」;
  • 弹出文件名输入框,输入 requirements.txt → 按下enter确认(注意:无中文、无空格);
  • 双击打开创建好的requirements.txt文件,即可开始手动编写需要的库清单。

补充提示:如果找不到项目根目录,可通过pycharm左侧「project」面板查看,确保文件和核心代码同级,避免后续执行命令时找不到文件。

方法2:终端快速创建(熟悉终端者首选)

适配场景:习惯用终端操作,快速创建空文件,无需图形界面点击。

打开pycharm底部的「terminal」终端(默认在项目根目录,若不在,输入cd 项目路径 切换);

输入对应系统的命令,创建空的requirements.txt:

  • windows系统(你的开发环境,重点记这个):type nul > requirements.txt
  • mac/linux系统(了解即可):touch requirements.txt

按下enter,终端无报错,项目根目录会自动生成requirements.txt文件,双击打开即可编写。

核心:编写requirements.txt内容(语法超简单)

语法规则:每行写一个库名,可按需指定版本(推荐指定,避免版本兼容问题),# 开头的行是注释,不会被执行(可用于标注库的用途,方便后续维护)。

写法1:基础版(只写库名,安装最新稳定版)

适合:对库版本无特殊要求,只想快速安装,简洁高效。

# 注释:python上位机依赖清单
# 界面开发(pyqt5)
pyqt5 pyqt5-tools
# plc通信相关(modbus + s7协议,对接plcsim)
pymodbus python-snap7
# 相机对接 + 视觉处理
opencv-python
# 对接海康工业相机(官方sdk封装)
hikvision-api
# 辅助工具
numpy
# 保存检测数据到excel(上位机刚需)
openpyxl
# 串口通信(备用,对接串口plc/传感器)
pyserial

写法2:进阶版(指定版本,推荐项目使用)

推荐理由:python库版本更新快,不同版本可能存在兼容性问题(比如pyqt5高版本和pyqt5-tools不匹配、python-snap7版本过高导致无法连接plcsim),指定版本能确保环境一致性。

格式:库名==版本号(==前后无空格),以下是适配你项目的稳定版本组合,可直接复制使用。

# python上位机依赖清单(指定版本,稳定兼容)
# 界面开发(pyqt5稳定版本,避免报错)
pyqt5==5.15.9
pyqt5-tools==5.15.9.3.0.1
# plc通信(适配plcsim advanced 5.0)
pymodbus==2.5.3
# modbus tcp通信,稳定无bug
python-snap7==1.4.1
# s7协议,对接西门子plc/plcsim
opencv-python==4.8.1.78
# 稳定版,避免取流卡顿
hikvision-api==0.3.5
# 海康相机sdk封装,适配mvs sdk
# 辅助工具(版本兼容,无冗余)
numpy==1.24.3
# 适配opencv 4.8.1 openpyxl==3.1.2
# 操作excel,支持批量保存数据
pyserial==3.5
# 串口通信,备用

写法3:其他常用补充(了解即可)

  • 指定版本范围:比如 numpy>=1.20.0,<1.25.0(安装1.20.0到1.25.0之间的版本);
  • 从指定地址安装:比如 git+https://github.com/xxx/xxx.git(适用于安装第三方开源库的开发版);
  • 卸载时使用:和安装语法一致,后续会讲批量卸载命令。

三、关键步骤:批量安装所有依赖

编写完requirements.txt后,无需逐个执行pip install,一条命令就能批量安装所有库,步骤如下:

1. 打开终端,切换到项目根目录

打开pycharm的terminal终端(底部),默认已经在项目根目录;若不在,输入以下命令切换(替换为你的项目路径):

cd d:\pycharmprojects\plc_camera_uppercomputer # 示例路径,替换成你自己的

2. 核心安装命令(必记)

基础命令(从官方pypi源安装):

pip install -r requirements.txt

执行后,pip会自动读取requirements.txt中的所有库,逐个下载、安装,终端会显示安装进度,全部显示successfully installed即安装完成。

3. 优化命令(国内镜像源,解决安装慢、超时)

重点避坑:国内网络访问python官方pypi源(国外服务器)速度较慢,经常出现超时、安装失败的问题,推荐使用 国内镜像源 加速,命令如下(阿里云镜像源,速度最快,优先选):

# 阿里云镜像源(推荐,适配国内网络) 
pip install -r requirements.txt -i https://mirrors.aliyun.com/pypi/simple/ 
# 清华镜像源(备选,稳定) 
pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple/

补充:镜像源只是加速下载,安装的库和官方源完全一致,无需担心版本问题。

四、实用拓展命令(必记,提升效率)

除了批量安装,还有3个常用命令,适配项目备份、环境清理,结合你的上位机项目非常实用。

1. 导出当前环境的所有库到requirements.txt

场景:你已经手动安装好了所有需要的库,想快速生成requirements.txt(用于备份、共享给他人),执行以下命令:

pip freeze > requirements.txt

执行后,会自动覆盖(或生成)requirements.txt,写入当前环境已安装的所有python库及对应版本,无需手动编写。

2. 批量卸载所有依赖(慎用)

场景:清理开发环境、重新配置依赖,执行以下命令,会批量卸载requirements.txt中的所有库:

pip uninstall -r requirements.txt -y

说明:-y 参数表示“自动确认卸载”,无需逐个输入y确认,提升效率;慎用,避免误删环境。

3. 安装时指定requirements.txt路径

场景:requirements.txt不在当前终端目录下(比如放在桌面),无需切换目录,直接指定文件路径即可:

pip install -r d:\desktop\requirements.txt -i https://mirrors.aliyun.com/pypi/simple/

到此这篇关于python实现批量安装依赖的方法详解的文章就介绍到这了,更多相关python安装依赖内容请搜索代码网以前的文章或继续浏览下面的相关文章希望大家以后多多支持代码网!

(0)

相关文章:

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论

验证码:
Copyright © 2017-2026  代码网 保留所有权利. 粤ICP备2024248653号
站长QQ:2386932994 | 联系邮箱:2386932994@qq.com