解析
两种方法来计算:
- 如果这一年的三月前一天只有29天则为闰年,否则不是非闰年
- 通过最经典的方法去计算:能被 4 整除的大多是闰年,但能被 100 整除 而不能被 400 整除的年份不是闰年,如 1900 年是平年,2000 年是闰年。
使用datetime模块
点击查看代码
import datetime
years = int(input())
time_delta = datetime.timedelta(days=1) # 参数days指定生成多少天的时间差。
dt = datetime.date(year=years, month=3, day=1) # 创建3月1号某年的时间对象
res = dt - time_delta # 两个相减最后得到时间差。
if res.day == 29: # 如果结果是29天则为闰年
print("yes")
else:
print("no")
使用传统整除的方法。
点击查看代码
years = int(input())
if years % 400 == 0 or (years % 4 == 0 and years % 100 != 0):
print("yes")
else:
print("no")