Python2_闰年计算器
程序员文章站
2024-01-24 23:12:22
Python2_闰年计算器先上一个未优化的程序:year=input("请输入一个年份:")year_int=int(year)if year_int%4==0: if year_int%100==0: if year_int%400==0: print(year+"是闰年") else: print(year+"不是闰年") else: print(year+"是闰年")else:...
Python2_闰年计算器
先上一个未优化的程序:
year=input("请输入一个年份:")
year_int=int(year)
if year_int%4==0:
if year_int%100==0:
if year_int%400==0:
print(year+"是闰年")
else:
print(year+"不是闰年")
else:
print(year+"是闰年")
else:
print(year+"不是闰年")
这个程序还是很好理解的,但值得一提的是在Python中,缩进十分重要,不同于C等语言使用{ },python利用缩进来判断else跟着的是哪个if
再上一个经布尔变量优化过的程序:
year=input("请输入一个年份:")
year_int=int(year)
is_leap=False
if year_int%4==0:
if year_int%100==0:
if year_int%400==0:
is_leap=True
else:
is_leap=False
else:
is_leap=True
else:
is_leap=False
if is_leap:
print(year+"是闰年")
else:
print(year+"不是闰年")
但看起来还是太长,那么:
year=input("请输入一个年份:")
year_int=int(year)
is_leap=False
if year_int%400==0:
is_leap=True
elif year_int%4==0:
if year_int%100!=0:
is_leap=True
if is_leap:
print(year+"是闰年")
else:
print(year+"不是闰年")
这个算法的思路是,找到使年份为闰年的条件,是布尔变量值变为真。值得注意的是,python中只能用elif而不能出现else if,这与这个语言在设计时追求的精简有关。
明天见!
本文地址:https://blog.csdn.net/LUSIA_TT/article/details/107167372