在用户键入退出之前,我不知道如何添加while循环来不断询问姓名。
我在语法上尝试了不同的方法,但是最接近的是您所看到的代码。我刚刚开始编码,所以我是新手。
name = input('Enter your name, or type quit to exit ')
keep_going = True
while keep_going:
if name == "quit":
keep_going = False
在程序开始时,我输入的所有内容都会让我进入,这是不应该发生的。应该发生的是输入任何应该让我输入的名称,然后键入“ quit”应该不断提示我输入新答案。
该过程也将在我的代码结尾处翻转...如果我键入“ quit”,它将启动程序,如果我键入任何其他名称,则它将在我的编码的最后一步结束该程序。步骤7:添加输入语句以输入名称或键入quit退出
答案 0 :(得分:0)
您需要将输入放入循环中。同样退出循环会继续执行程序,而不会退出程序。您可以使用sys.exit()
来这样做。
我不确定您算什么名字,但是在此示例中,该词的长度至少为1个字母。然后输入“ quit”(不区分大小写,因为我在字符串上调用.lower()
)退出程序。
import sys
name = ""
while len(name) > 0: # user must enter a name at least 1 character long to proceed
name = input('Enter your name, or type quit to exit ')
if name.lower() == "quit":
sys.exit() # when the user enters exit, exit the program
如果您有一个定义名称的函数:validName(name)
,您也可以这样做:
while not validName(name):
答案 1 :(得分:0)
尝试以下代码:
name = input('Name: ')
if name == 'quit':
keep_going = False
else:
keep_going = True
# other code...
答案 2 :(得分:0)
当前,您只问一次问题,然后进入循环。通过输入“ quit”,可以退出循环,但是如果您不键入quit,则循环是无限的,因为用户没有机会输入新名称。首先,您需要将输入语句放入while循环中,以便不断重复并回答问题。
keep_going = True
while keep_going:
name = input('Enter your name, or type quit to exit ')
if name == "quit":
keep_going = False