I have not been able to figure out how to loop my code back to a specific point, I have 2 loop points and the first one works fine but I can't get the second one to work as I have to define the integer variable "num_stores_int" but if I do, then the "while" loop doesn't work. See my code for where those points are.
Here's my code:
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!!......\n\n 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 the\n 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------------------------")
CodePudding user response:
It is not super clear what you are looking for, but I believe that your outer while
loop is meant to keep asking the user for input when they input something that is not numeric?
I would only wrap that while
loop around the code that asks for user input, as follows:
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 the\n 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!!......\n\n 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")
CodePudding user response:
My bad, I must've poorly explained what was wrong but I just tried something and it worked.
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!!......\n\n Anyway,")
print (f" clearly big business person, you own {num_stores_int} stores. I'm gonna\n 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 the\n 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()