我刚开始学习python并尝试创建一个基本的while循环,但当我运行它时,它不运行elif语句,即如果userguess为==“tiger”,则不会打印“几乎”。。 由于我不熟悉这一点,任何解释都将不胜感激。谢谢
animal = "lion"
userguess = raw_input("guess an animal: ")
while userguess != animal:
userguess = raw_input("guess an animal: ")
if userguess == animal:
print("you got it")
break
elif userguess == "tiger":
print("almost, try again: ")
else:
print("try again: ")
这是因为在到达
if
块之前,您要调用raw_input
两次。因此,用户必须在进行任何检查之前输入两个动物。在如果希望用户只需猜测一次,请将第二个
^{pr2}$raw_input
移到循环的末尾。在或者,将第二个
raw_input
调用留在原处,并用一个伪值替换第一个调用。在您还可以完全删除初始赋值以及while循环的条件赋值。{{cd6>始终是触发cd6}之前的条件。在
第二种和第三种方法可能比第一种方法更好,因为它们可以确保即使用户在第一次尝试时猜到“狮子”时也能打印出“yougot it”。在
相关问题 更多 >
编程相关推荐