擅长:python、mysql、java
<pre><code>first_time_asking=True
while True:
if (first_time_asking):
diffChoice = input("Select a difficuilty...\n[e]asy, [m]edium, [h]ard: ").lower()
else:
diffChoice = input("Incorrect input...\nSelect a difficuilty...\n[e]asy, [m]edium, [h]ard: ").lower()
if diffChoice in ('e', 'm', 'h', 1, 2, 3):
break
else:
first_time_asking=False
</code></pre>
<p>试试这个</p>
<p>在您的代码中,如果输入正确,它将转到if条件和while循环中断。但如果您输入了不正确的一个,它将转到else条件,并再次请求输入。在您为else中的输入提供输入后,while循环将再次启动,并要求您输入while循环中的第一行</p>
<p>然而,在应答中给出的代码中,它只在while循环开始时询问输入。通过使用变量“first_time_asking”,您可以知道以前的输入是正确的还是错误的。取决于这一点,我们切换我们请求的输入语句</p>