无法循环到输入验证代码中的某个点



我一直无法弄清楚如何将代码循环回特定的点,我有两个循环点,第一个循环点运行良好,但我无法让第二个循环点工作,因为我必须定义整数变量"num_stores_int";但是如果我这样做;而";循环不起作用。有关这些点的位置,请参阅我的代码。

这是我的代码:

num_stores = ("")
num_stores_int = int(num_stores)
while num_stores.isnumeric() == False:
while num_stores_int > 10: #This is where I want it to loop to 
num_stores = input ("n To start, please enter the amount of stores you own: ")
if num_stores.isnumeric() == True:
num_stores_int = int(num_stores)
if num_stores_int > 10: #this is where I want the "while" loop to validate the integer being less than 10
print (" Sorry, this sales tracker can track a maximum of 10 stores.n Here, try that again, I'll reboot it for you.n")
print (" -----------------------REBOOTING------------------------")
if num_stores_int >= 5:
print ("n Hmm, interesting, you'd think someone with that many n stores would be able to afford a better sales tracker.")
print (" Well, I guess you're stuck with me! MUHAHAHAHA!!......nn Anyway,")
print (f" clearly big business person, you own {num_stores_int} stores.n I'm gonna need you to tell me where each one is")
else:
num_stores_int = int(num_stores)
print (f" Alright... so, random business person, you have {num_stores_int} stores.n Now, I'm going to need you to tell me where each one is")
else:
print ("n Hey, uhh, you're going to have to write a number for then amount of stores you've got, letters and decimals don't n really work. Here, try again, I'll reboot it for you.n")
print (" -----------------------REBOOTING------------------------")

目前还不太清楚您在寻找什么,但我相信您的外部while循环是为了在用户输入非数字内容时不断要求用户输入?

我只会将while循环包裹在要求用户输入的代码周围,如下所示:

num_stores = ("")
num_stores_int = 0
while num_stores_int < 10: #This is where I want it to loop to
num_stores = input ("n To start, please enter the amount of stores you own:")
while num_stores.isnumeric() == False:
print ("n Hey, uhh, you're going to have to write a number for then amount of stores you've got, letters and decimals don't n really work. Here, try again, I'll reboot it for you.n")
print (" -----------------------REBOOTING------------------------")
num_stores = input ("n To start, please enter the amount of stores you own:")
num_stores_int = int(num_stores)
if num_stores_int > 10: #this is where I want the "while" loop to validate the integer being less than 10
print (" Sorry, this sales tracker can track a maximum of 10 stores.n Here, try that again, I'll reboot it for you.n")
print (" -----------------------REBOOTING------------------------")
elif num_stores_int >= 5:
print ("n Hmm, interesting, you'd think someone with that many n stores would be able to afford a better sales tracker.")
print (" Well, I guess you're stuck with me! MUHAHAHAHA!!......nn Anyway,")
print (f" clearly big business person, you own {num_stores_int} stores.n I'm gonna need you to tell me where each one is")
else:
print (f" Alright... so, random business person, you have {num_stores_int} stores.n Now, I'm going to need you to tell me where each one is")

糟糕的是,我一定解释不清楚出了什么问题,但我只是尝试了一下,结果成功了。

def restart():
num_stores = ("")
while num_stores.isnumeric() == False: 
num_stores = input ("n To start, please enter the amount of stores you own: ")
if num_stores.isnumeric() == True:
num_stores_int = int(num_stores)
if num_stores_int > 10:
print ("n Sorry, this sales tracker can track a maximum of 10 stores.n Here, try that again, I'll reboot it for you.n")
print (" -----------------------REBOOTING------------------------")
restart()
elif num_stores_int >= 5:
print ("n Hmm, interesting, you'd think someone with that many n stores would be able to afford a better sales tracker.")
print (" Well, I guess you're stuck with me! MUHAHAHAHA!!......nn Anyway,")
print (f" clearly big business person, you own {num_stores_int} stores. I'm gonnan need you to tell me where each one is")
else:
num_stores_int = int(num_stores)
print (f" Alright... so, random business person, you have {num_stores_int} stores.n Now, I'm going to need you to tell me where each one is")
else:
print ("n Hey, uhh, you're going to have to write a number for then amount of stores you've got, letters and decimals don't n really work. Here, try again, I'll reboot it for you.n")
print (" -----------------------REBOOTING------------------------")
restart()

相关内容

  • 没有找到相关文章

最新更新