【发布时间】:2019-05-10 15:23:59
【问题描述】:
我试图反复要求用户输入一个字符串。如果该字符串是“再见”,程序应该返回“再见”并终止。
我不知道如何让决策函数告诉 while 循环该终止了。
def decide(greeting):
if greeting == "hi":
return "Hello"
elif greeting == "bye":
return "Bye"
x = input("Insert here: ")
while True:
print(decide(x))
x = input("Insert here: ")
编辑:cmets 中的人说要在 while 循环中使用条件来检查返回值。我不能这样做,因为实际上返回的值"Bye" 存储在局部变量中。这两个函数实际上在一个类中,我更愿意在条件上保持 while 循环简短。
【问题讨论】:
-
为什么不能在while循环中检查返回的字符串退出?
-
就像@Krishna 说的那样,在
while内执行if以检查返回值,并相应地检查break。 -
@Krishna 请查看我的编辑。
-
@Viktor Petrov 建议的答案怎么样。那可行吗?还是我错过了什么?
标签: python while-loop exit break