Python 始终执行Else语句
我正在做练习练习。代码如下:Python 始终执行Else语句,python,if-statement,Python,If Statement,我正在做练习练习。代码如下: game_running = True while game_running: user = input("> ") if user.lower() == "help": print("start - to start the car") print("stop - to stop the car") print(
game_running = True
while game_running:
user = input("> ")
if user.lower() == "help":
print("start - to start the car")
print("stop - to stop the car")
print("quit - to exist game")
if user.lower() == "start":
print("Car started.")
if user.lower() == "stop":
print("Car stopped.")
if user.lower() == "quit":
game_running = False
else:
print("I don't understand that...")
例如,当您键入:help
时,会出现一个帮助菜单-start-启动汽车。。。等等当您键入不同的内容(akfjaksfj
)时,您会收到一条信息,我不明白
问题是-当您键入
help
时,else语句也会执行-但是为什么?我找不到问题…在链接类似这样的if语句时使用elif
,这样任何语句中的匹配都会断开链:
game_running = True
while game_running:
user = input("> ")
if user.lower() == "help":
print("start - to start the car")
print("stop - to stop the car")
print("quit - to exist game")
elif user.lower() == "start":
print("Car started.")
elif user.lower() == "stop":
print("Car stopped.")
elif user.lower() == "quit":
game_running = False
else:
print("I don't understand that...")
试着在你的陈述中使用elif。如果要添加到上一篇文章中,请尝试使用原始输入,以避免在输入其他数据类型时出错
game_running = True
while game_running:
user = raw_input("> ")
if user.lower() == "help":
print("start - to start the car")
print("stop - to stop the car")
print("quit - to exist game")
elif user.lower() == "start":
print("Car started.")
elif user.lower() == "stop":
print("Car stopped.")
elif user.lower() == "quit":
game_running = False
else:
print("I don't understand that...")
非常感谢你!!!这应该可以回答您的问题:第二个、第三个和第四个
if
语句应该是elif
。已经回答过了,请避免重复。raw\u input
只适用于Python2,它已经过时了。现在任何人都应该在使用Python3了,对于这一点,input
是正确的。