你现在看的日子——几月几号星期几——用的就是公历(也叫阳历、格里历)。它是目前全世界最通用的日历。闰年就是公历里特殊的年份:这一年有 366 天,多出来的一天塞在 2 月,变成 2 月 29 日。

最有体会的是 2 月 29 日出生的人:别人年年过生日,他们的"真生日"四年才轮到一次,平年只好在 2 月 28 日或 3 月 1 日凑过。为什么日历要搞这么一个四年才出现一次的日子?因为地球不配合。

一年其实有 365 天零 6 个小时左右

四季轮回一遍的时间(一个回归年)大约是 365 天 5 小时 49 分,不是整整齐齐的 365 天。日历总不能每天过日子还拖着个小数点,于是公历干脆按 365 天算,把那 6 小时左右的零头先攒着:

  • 攒 4 年,大约攒出 24 小时,差不多一天;
  • 第 4 年把这一天加进 2 月,这年就是闰年,366 天。

这就是"四年一闰"的来历。如果不补,日历就会比季节跑得越来越快:每年快 6 小时,一百多年就差出一个月,过七八百年,北半球的"1 月"可能跑到夏天去了。闰年就是让日历别和季节脱节的"找平"机制。

为什么"能被 4 整除"还不够

很多人只记得"年份能被 4 整除就是闰年",这话对了一大半,但会在整百年翻车。完整规则是三条,按顺序判:

1. 一般年份能被 4 整除就是闰年:2024 是,2026 不是;

2. 整百年光能被 4 整除不算,得能被 400 整除才是闰年:所以 1900 年、2100 年都不是闰年,2000 年、2400 年是;

3. 也就是说 400 年里只有 97 个闰年,不是 100 个。

为什么要扣掉 1900 这样的年份?因为真实零头是 5 小时 49 分,比 6 小时少一点。四年加一天,等于按"每年多 6 小时"补,其实是补过头了——每年多补约 11 分钟。这 11 分钟攒一百多年又是一天,所以整百年要扣掉一次(百年不闰);可扣多了又欠一点,于是四百年再放回来一次(四百年再闰)。加加减减之后,公历平均每年约 365.2425 天,和真实值只差二十几秒,要三千多年才攒出一整天的误差。对日常过日子来说,这已经够准了。

一眼看懂 / 示意图

一百年整点,要再过一道关

一百年整点,要再过一道关年份能被4整除吗?能是整百年吗?是还能被400整除吗?不能不是能不能闰年:366天2024、2000、2400平年:365天2026、1900、2100
  1. 01普通年份

    能被4整除便是闰年

  2. 02整百年份

    还须能被400整除

400年里97个闰年;公历闰日放在2月29日。

这套规矩是打补丁打出来的

公历的前身是古罗马的儒略历(凯撒时期推行),当时只规定了"四年一闰",没有整百年扣减。结果上面说的那 11 分钟误差攒了一千多年,到 16 世纪,日历已经比季节慢了大约 10 天,春分都从 3 月 21 日漂到了 3 月 11 日,影响教会算复活节。

1582 年,教皇格里高利十三世改了规则——就是现在这套"四年一闰、百年不闰、四百年再闰"——并且直接宣布当年 10 月 4 日的第二天是 10 月 15 日,把多漂出来的 10 天从日历上删掉。所以这套日历也叫"格里历"。各国改用的年头不一样:英国到 1752 年才改,俄国到 1918 年才改("十月革命"按公历其实在 11 月)。中国 1912 年起使用公历,1949 年后正式以公元纪年。

闰年和闰月是两码事

这是最常见的混淆:这里说的公历闰年、闰日,是给 2 月加一天;闰月是农历的事——直接多加一整个月(比如"闰二月"就是过两个农历二月)。两套历法各补各的:公历补的是"地球绕太阳的零头",农历补的是"月亮周期和太阳周期对不上的账"。所以听见"今年有闰二月"和"今年是闰年",说的是完全不同的两件事(详见词条"闰月""农历")。

顺带一提,二十四节气在公历上的日期基本固定(比如近年来清明通常在 4 月 4 日或 5 日),正是因为节气和公历一样,都是跟着太阳走的。