You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python闰年计算器如何限制用户输入1582年之前的年份

闰年计算器1582年下限限制实现方案

你可以在用户输入环节增加年份范围校验逻辑即可解决问题,以下是优化后的完整可运行代码,自带输入不合法自动提示重输功能:

# 功能介绍
print("欢迎使用闰年计算器!")
print("本计算器仅支持查询1582年及之后的年份,公历纪年自1582年起正式推行。")

# 用户输入+合法性校验
while True:
    a = int(input("请输入要查询的年份:"))
    if a >= 1582:
        break
    print("输入无效!请输入1582年及之后的年份重试。")

# 闰年计算逻辑
def leapyr(a):
    if a % 400 == 0:
        return True
    if a % 100 == 0:
        return False
    if a % 4 == 0:
        return True
    return False

# 输出结果
if leapyr(a):
    print(f"{a}年是闰年")
else:
    print(f"{a}年不是闰年")

# 阻止程序自动关闭
input("按回车键退出程序:")

核心修改说明:

  • 新增了while True循环包裹用户输入逻辑,只要输入年份小于1582就会提示用户重新输入,直到输入符合要求才会进入后续计算环节
  • 同时优化了结果输出逻辑,直接展示用户易懂的中文结果,而非仅输出布尔值

如果不需要自动重输,也可以选择输入不合法直接退出的方案,只需将输入部分替换为以下代码即可:

a = int(input("请输入要查询的年份:"))
if a < 1582:
    print("输入无效:本计算器仅支持查询1582年及之后的年份")
    exit()

内容的提问来源于stack exchange,提问作者p.adams

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.05 06:09:03