在线提交需求

请留下您的联系方式,我们的专家将在 24 小时内与您沟通。

极奇策RPA技术教程:整除运算 (NodeMathFloorDiv) - 自动化开发与配置详细指南

极奇策技术团队更新于 2026-08-260 阅读

image.png

整除运算

📖 节点概述

双输入数学节点,执行向下取整除法(floor division),返回 数值 A // 数值 B 的结果。即计算两个数值的商,并向负无穷方向取整。例如 7 // 3 = 2-7 // 3 = -3。除数为 0 时,节点返回 0 以避免崩溃。该节点为纯数据节点,无执行端口,通过数据连线被动输出整型结果。

💡 使用场景

  • 分页计算:计算总数据量除以每页数量,得到所需页数(结合向上取整可精确计算)。
  • 循环索引分组:将连续整数映射到固定大小的分组中(如 index // group_size 得到组号)。
  • 时间单位转换:将秒数转换为分钟数(seconds // 60),舍弃余秒。
  • 货币单位拆分:将总分数转换为元(cents // 100),忽略剩余分币。
  • 整数倍判断:判断 A 是否为 B 的整数倍:A // B * B == A

🎮 实战连线指南:如何正确使用它?

节点有两个输入端口 数值 A数值 B,分别接收被除数和除数。结果从 结果 引脚输出为整数。

场景案例:将总秒数转换为分钟数(向下取整)

  1. 获取原始秒数:使用【变量获取】节点读取 total_seconds = 367(秒)。
  2. 设置除数:使用【整数】常量节点输入 60
  3. 连接节点
    • total_seconds 连入【整除运算】的 数值 A
    • 将常量 60 连入 数值 B
  4. 获取结果结果 输出 367 // 60 = 6(分钟),余下 7 秒可通过【取余】节点获得。
  5. 后续使用:将分钟数用于时间格式化或计费逻辑。

💡 与普通除法的区别:普通除法 / 返回浮点数(如 7/3 ≈ 2.333),整除运算直接返回整数部分(向负无穷取整)。


⚙️ 引脚与参数说明

📥 输入引脚

引脚名称数据类型说明
数值 AFLOAT / INT被除数。可通过控件填写默认值或连线动态传入。
数值 BFLOAT / INT除数。不能为 0(节点内部处理为返回 0)。可通过控件或连线提供。

📤 输出引脚

引脚名称数据类型说明
结果INT数值 A // 数值 B 的整数结果。若除数为 0,返回 0。引脚为只读。

🔧 核心运算逻辑

  • 数值 A数值 B 转换为浮点数(转换失败则设为 0.01.0)。
  • 数值 B == 0.0,直接返回 0(避免异常)。
  • 否则执行 Python 风格的向下取整除法:int(a // b)
    • 例如:7 // 3 = 2-7 // 3 = -37.0 // 2.5 = 2

注意// 运算符的结果始终为整数,且 Python 中对于负数结果向下取整(向负无穷方向),而非向零截断。


⚠️ 注意事项

  • 除数为零处理:节点会返回 0 并继续运行,不会抛出异常。请在逻辑中自行检测除数为零的情况(如使用【条件判断】节点)。
  • 浮点输入:即使输入是浮点数(如 7.0 // 3.0),结果仍然是整数 2。但浮点数精度问题可能导致意外结果(如 7.0 // 0.1 可能不是精确的 70,因为 0.1 在二进制中无法精确表示)。
  • 负数整除:与部分编程语言向零取整不同,本节点采用 Python 的向下取整规则。例如 -7 // 3 = -3(因为 -2.333 向下取整为 -3)。
  • 大整数:Python 支持任意大整数,因此输入很大的整数时不会有溢出问题。

💎 小贴士

  • 需要向零取整的整除(截断小数部分),可以使用【截断保留小数】节点并将小数位数设为 0,或使用【类型转换】节点转为整数。
  • 结合【取余】节点可以同时获取商和余数:商 = A // B余数 = A % B
  • 在循环中按批次处理数据时,索引 // 批次大小 可以快速计算出当前元素所属的批次号。
助理
咨询
微信
微信客服扫码添加微信
社群
QQ群扫码加入Q群
电话
免费咨询热线0371-67993886
顶部