极奇策RPA技术教程:求最大值 (NodeMathMax) - 自动化开发与配置详细指南

求最大值
📖 节点概述
多输入数学节点,从所有输入数值中找出最大值。支持动态增减输入端口(右键菜单),最少 2 个数值,最多无上限。输出格式可选择自动推断、强制整数或强制浮点,灵活适应下游需求。该节点为纯数据节点,无执行端口。
💡 使用场景:
- 数据极值分析:查找一组传感器读数、销售数据、测试分数中的最高值。
- 性能瓶颈定位:获取多个时间点的最大响应时间、最大 CPU 占用率。
- 边界值检测:确认数据是否超出预设阈值(如最大库存、最高温度)。
- 评分系统:在评委打分中去掉最高分(配合其他节点使用)。
- 动态比较:运行时根据不同条件选择最大值作为决策依据。
🎮 实战连线指南:如何正确使用它?
节点通过动态端口接收至少 2 个数值,内部使用 max() 函数找出最大值。结果类型由输出格式决定。
场景案例:统计一周内最高气温
- 准备气温数据:使用【常量】或【变量获取】节点提供:
周一 = 28.5周二 = 30.2周三 = 29.8周四 = 31.0周五 = 32.5周六 = 33.1周日 = 32.9
- 连接节点:
- 右键单击【求最大值】节点,多次选择“添加端口”增加至 7 个输入。
- 依次连接每天的气温值到
数值 1~数值 7。
- 设置输出格式:选择
自动推断 (Auto)→ 最大值33.1为浮点数。 - 获取结果:
结果输出33.1,可继续用于高温预警或报表。
💡 强制整数输出:若选择 强制整数 (Int),结果会被截断(如 33.1 → 33)。强制浮点 (Float) 则始终返回浮点数。
⚙️ 引脚与参数说明
📥 输入引脚(动态)
| 引脚名称 | 数据类型 | 说明 |
|---|---|---|
| 数值 1, 数值 2, ... | FLOAT / INT | 参与比较的数值。最少 2 个,可通过右键菜单动态增删。每个引脚配有默认值输入框(初始0.0),可通过控件填写或连线传入。 |
⚙️ 控件参数
| 控件名称 | 类型 | 说明 |
|---|---|---|
| 输出格式 | 下拉选择 | 控制结果类型:<br>• 自动推断 (Auto):若所有输入均为整数,返回 INT;否则返回 FLOAT。<br>• 强制整数 (Int):最大值转换为整数(向零截断)。<br>• 强制浮点 (Float):最大值转换为浮点数。 |
📤 输出引脚
| 引脚名称 | 数据类型 | 说明 |
|---|---|---|
| 结果 | FLOAT / INT | 所有输入数值中的最大值。引脚类型和颜色会根据输出格式设置动态变化。 |
🔧 核心运算逻辑
- 收集所有有效动态端口(自动排除末尾未连线的幽灵端口)。
- 依次读取每个端口的数值(失败则使用控件默认值
0.0),转换为浮点数。 - 使用 Python 内置
max()函数计算最大值。 - 根据输出格式进行类型转换:
- 自动:若所有输入均为整数,返回
INT,否则FLOAT。 - 强制整数:
int(最大值)(向零截断)。 - 强制浮点:
float(最大值)。
- 自动:若所有输入均为整数,返回
⚠️ 注意事项
- 空输入保护:若没有有效输入端口(理论上不会发生,因为最少 2 个),返回
0.0。 - 动态端口清理:当最后一个输入端口没有连线时,该端口会被视为“幽灵端口”并在计算时自动忽略,避免空值参与比较。
- 浮点比较:浮点数比较遵循 IEEE 754 标准,注意 NaN 和无穷大的行为(如果输入包含 NaN,结果可能是 NaN)。
- 整数无上限:Python 整数支持任意大数,因此可安全处理极大整数的最大值比较。
- 输出格式强制转换:强制整数会丢失小数部分(直接截断)。例如最大值
33.9转为整数后为33,若需保留四舍五入请使用其他节点。
💎 小贴士:
- 需要求最小值请使用【求最小值】节点。
- 动态端口支持右键删除,当不再需要某个输入时,删除端口可使界面更简洁。
- 结合【列表操作】节点,可以将列表中的所有值一次性展开连接到最大值节点(通过【列表展开】辅助节点)。
- 若需要同时获取最大值和其所在索引,可使用【列表操作】中的相关函数。
这篇文档对您有帮助吗?
您的反馈将帮助我们持续优化文档内容

