每到2月,总有人会问:今年是闰年吗?2月是28天还是29天?判断公历闰年并不难,只要记住一句话:四年一闰,百年不闰,四百年再闰。

所谓闰年,就是一年有366天,2月有29天,平年则是365天,2月有28天,具体怎么判断闰年呢?
公历闰年的核心规则
判断一个公历年份是不是闰年,可以按照下面三条规则:
- 能被400整除的年份,是闰年;
- 能被100整除但不能被400整除的年份,不是闰年;
- 能被4整除但不能被100整除的年份,是闰年;
- 不能被4整除的年份,不是闰年。
换句话说:年份能被400整除,或者能被4整除但不能被100整除,就是闰年。
快速判断步骤
拿到一个年份时,可以按这个顺序判断:
第一步,看它能不能被400整除,能,就是闰年,比如2000年、2400年。
第二步,如果不能被400整除,再看它能不能被100整除,能,就是平年,比如1900年、2100年。
第三步,如果不能被100整除,再看它能不能被4整除,能,就是闰年,比如2024年、1996年。
第四步,如果连4也不能整除,那就是平年,比如2023年、2025年。
这个顺序很重要,因为它可以避免一个常见错误:以为“能被4整除就是闰年”,比如1900能被4整除,但它不是闰年,因为它是整百年份,且不能被400整除。
几个典型例子
- 2024年:2024 ÷ 4 = 506,且不是整百年份,所以是闰年,2月有29天。
- 2023年:2023 ÷ 4 有余数,所以是平年,2月有28天。
- 2000年:2000 ÷ 400 = 5,所以是闰年。
- 1900年:1900 ÷ 400 有余数,虽然能被4整除,但作为整百年份不能被400整除,所以是平年。
- 2100年:同理,是平年。
为什么会有闰年?
地球绕太阳一周大约需要365.2422天,而我们的日历通常一年按365天计算,每年少算一点点,四年下来就差不多少了一天,所以需要每隔几年补一天,但每4年补一天又会稍微补多,于是规定“百年不闰”;而每400年再补回来一次,四百年再闰”。
用公式或代码判断
如果用公式表示,
闰年 = 能被400整除,或者能被4整除但不能被100整除。
用Python可以这样写:
def is_leap(year):
return year % 400 == 0 or (year % 4 == 0 and year % 100 != 0)
print(is_leap(2024)) # True print(is_leap(1900)) # False print(is_leap(2000)) # True
注意区分公历和农历
平时说的“闰年”,通常指公历闰年,也就是2月有29天,农历也有“闰月”的说法,但它的判断规则和公历完全不同,不能简单用“被4整除”来判断。
怎么判断闰年?记住这个顺序:先看400,再看100,最后看4,能过400直接闰;过100不过400是平;过4不过100是闰;都不过就是平。 掌握这个规则,以后判断闰年就不会错了。

