日期计算包括求两个日期相差多少天、某个日期加减若干天是哪一天、某天是星期几,以及一段时间内有多少个工作日,常用于计算纪念日、合同期限、预产期、假期安排等。下面说明在程序中的表示。
日期计算在程序中的表示
程序内部常把日期存为整数序数:Python date.toordinal() 以公元 1 年 1 月 1 日为第 1 天,Excel 以 1900 年 1 月 1 日为 1(并沿用把 1900 年当作闰年的历史兼容问题)。
示例
输入:2026-11-11 加 100 天
计算结果:2027-02-19,周五
说明:2026 年是平年,2 月有 28 天。
常见误区
- 误区:每月都是 30 天——按 30 天估算会出现偏差
- 误区:一年 52 周整——一年是 52 周多 1 或 2 天
- 误区:1900 年是闰年——能被 100 整除但不能被 400 整除,不是闰年
- 误区:工作日 = 周一到周五——还要考虑法定节假日和调休
与相关概念的区别
日期间隔计算求“过了多少天”,日期加减求“某天之后是哪天”,工作日计算只统计需要上班的天数。三者都依赖准确的历法规则。
Python 示例
下面是用 Python 实现的写法,可以按需要修改:
import datetime as dt
a, b = dt.date(2026, 1, 1), dt.date(2026, 11, 11)
print((b - a).days) # 314
print(a + dt.timedelta(days=100)) # 2026-04-11
print('一二三四五六日'[b.weekday()]) # 三
本站的日期间隔计算工具可以直接在网页中使用,无需安装,适合快速得到和核对结果。
常见问题
【两个日期相差几天包括当天吗?】直接相减不包括起始当天;首尾都算时再加 1。
【怎么判断闰年?】能被 4 整除且不能被 100 整除,或能被 400 整除的年份是闰年。
【工作日怎么算?】排除周六日和法定节假日,再加上调休上班的周末。
文中示例可以在本站对应工具中核对。
标签: 实用工具