我是Python v3的新手,并且在我的程序结束时使用while循环来确定用户是想重新启动/重试程序还是完成。
如果我选择是并且我不止一次重复该程序然后选择否,我会继续返回"您想再次搜索:(是/否)> "我重新尝试该程序的次数的选项,例如3次尝试,我必须在休息生效前输入n三次。
使用的代码如下。
while True:
finish_input = input("Would you like to search again: (Y/N) > ")
if finish_input.lower() == ("y"):
my_project()#restarts the program from the start
continue
elif finish_input.lower() == "n":
print()
print("Thank you for using this service.")
break
else:
print()
print("Invalid entry. Please enter Y or N")
我希望选项重新启动,但只需输入n一次即可关闭/中断程序并退出。非常感谢帮助。
答案 0 :(得分:0)
我认为这是实现这一目标的一种糟糕方式。做这样的事情怎么样?
#program starts
run_prog = True
while run_prog:
#Your original code
finish_input = "a"
while True:
finish_input = input("Would you like to search again: (Y/N) > ")
if finish_input.lower() == ("y"):
run_prog = True
break
elif finish_input.lower() == "n":
run_prog = False
print()
print("Thank you for using this service.")
break
else:
print()
print("Invalid entry. Please enter Y or N")
答案 1 :(得分:0)
你想要的是:
def my_project():
#Your other code here
my_project()
#The code that you posted
但你在做:
def my_project():
#Your other code here
#The code that you posted
不同之处在于,在最后一个程序中,你在程序内部循环:每个y
是对整个函数的另一个调用,稍后对于你必须放置的每个函数{{1} }。
代码如下所示:
n