极奇策RPA技术教程:获取月份天数 (NodeDaysInMonth) - 自动化开发与配置详细指南

获取月份天数
📖 节点概述
获取指定年份和月份的总天数。输入年份和月份(整数),输出该月的天数(如 1 月 31 天,2 月 28 或 29 天)。如果年份或月份留空或无效,则使用当前系统年份和月份作为默认值。该节点为纯数据节点,无执行端口。
💡 使用场景:
- 日期合法性验证:验证用户输入的日期是否存在(如检查日期 ≤ 当月天数)。
- 财务周期计算:确定月末最后一天,用于账期或计费周期。
- 日历/计划生成:生成某个月的完整日期列表时,需要知道该月有多少天。
- 报表数据聚合:按月统计时,根据当月天数计算平均值或总量。
- 闰年检测:通过 2 月天数可以间接判断闰年(29 天为闰年)。
🎮 实战连线指南:如何正确使用它?
节点有两个输入端口:年 和 月,输出端口 天数。
场景案例:获取 2025 年 2 月的天数
- 年:输入
2025 - 月:输入
2 - 获取结果:
天数输出28(2025 年不是闰年)。 - 后续使用:将该天数用于循环或条件判断。
使用当前年月:
- 将“年”和“月”输入框留空(或连线传递无效值),则使用当前系统时间对应的年份和月份。
闰年示例:
- 年
2024,月2→ 输出29
⚙️ 引脚与参数说明
📥 输入引脚
| 引脚名称 | 数据类型 | 说明 |
|---|---|---|
| 年 | INT | 年份,应为整数(如 2025)。留空或无效时自动使用当前年份。 |
| 月 | INT | 月份,范围 1~12。留空或无效时自动使用当前月份。 |
⚙️ 控件参数
| 控件名称 | 类型 | 说明 |
|---|---|---|
| 年 | 单行文本框 | 手动输入年份。连线时优先使用连线值。 |
| 月 | 单行文本框 | 手动输入月份。连线时优先使用连线值。 |
📤 输出引脚
| 引脚名称 | 数据类型 | 说明 |
|---|---|---|
| 天数 | INT | 指定年份和月份的总天数。若参数无效,返回0。 |
🔧 计算规则
- 使用 Python 标准库
calendar.monthrange(year, month)获取该月的第一天是星期几(忽略)和该月的天数。 - 如果
year或month无法转换为有效整数(如非数字、空字符串),则回退到当前系统年份或月份。 - 即使回退到当前值,仍可能得到有效天数(如当前为 2 月,则返回当前年月的正确天数)。
- 如果
month超出 1-12 范围,calendar.monthrange会抛出异常,节点捕获后返回0。
⚠️ 注意事项
- 月份范围:月份应为 1-12,否则返回 0。
- 年份范围:
calendar.monthrange支持 1-9999 年,超出范围也可能抛出异常,返回 0。 - 默认值依赖:如果“年”和“月”都无效,则返回当前年月对应的天数。例如当前是 2025 年 2 月,则返回 28。
- 性能:计算极快,无性能顾虑。
- 错误处理:不会抛出异常,无效输入返回 0。
💎 小贴士:
- 可用于判断闰年:2 月天数为 29 即为闰年。
- 结合【条件判断】节点,可检查某日是否有效(如日 ≤ 天数)。
- 如果需要动态遍历某个月的所有天数,可用该节点获取天数后,配合【Range 生成器】生成 1~天数 的序列。
- 由于是纯数据节点,无需执行信号,可在数据流中直接使用。
这篇文档对您有帮助吗?
您的反馈将帮助我们持续优化文档内容

