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
相关产品推荐
相关产品推荐

