<p>在您的情况下,使用<code>continue</code>比使用<code>break</code>更好地在输入无效的情况下重新启动循环</p>
<pre><code>def storepurchasing():
while True: ## loop 1
typeofdevice = input("Enter the tye of item you want as the number indicated as an index \n 1: Phone \n 2: Tablet \n\n Your selection: ")
if typeofdevice not in [str(n) for n in range(1,3)]:
print("please enter a valid input between 1 and 2 \n")
continue ## restart loop 1 in typeofdevice is not in ['1', '2']
if typeofdevice == "1":
while True: ## loop 2
typeofphone=input("Enter phone you want you want as the number indicated as an index \n 1: BPCM \n 2: BPSH \n 3: RPSS \n 4: RPLL \n 5: YPLS \n 6: YPLL\n\n Your selection: ")
if typeofphone not in [str(n) for n in range(1,7)]:
print("please enter a valid input between 1 and 6 \n")
continue ## restart loop 2 in typeofphone is not in ['1', '2', '3', '4', '5', '6']
if typeofphone == "1":
## do something
elif typeofphone == "2":
## do something
.......
elif typeofdevice == "2":
## do something
</code></pre>