【发布时间】:2019-03-26 00:59:57
【问题描述】:
我在下面循环我的函数时遇到了困难。我希望我的程序评估多年,然后使用适当的 SL 值终止程序。编写函数是错误的方法吗?非常感谢任何帮助。谢谢!代码如下:
def lYr():
year = int(input("Enter a year: "))
while year > 1582:
if int(year) % 4 == 0:
if int(year) % 100 == 0:
if int(year) % 400 == 0:
print("This is a lp-yr!")
break
else:
print("This is not a lp-yr!")
break
else:
print("This is a lp-yr!")
break
else:
print("This is not a lp-yr!")
break
else:
print("enter correct date")
break
lYr()
【问题讨论】:
-
“循环”到什么目的?明显的问题是您的
while条件将无限期保持为真,因为您永远不会在循环内修改变量year。 -
从
while True:块开始,并在收到标记值时中断。另请参阅this 问题。我认为在 SO 的某个地方有更好的答案,但我找不到。 -
我想说写一个函数几乎总是最好的方法。
标签: python