<p>因为你是编程新手,我也会在我的答案中得到一些基本的提示。在</p>
<p><strong>无限循环</strong></p>
<p>您试图通过首先设置<code>again = 'y'</code>来启动一个无限循环,然后使用此变量来计算while循环。因为不改变y的值,所以最好不要使用变量来创建这个无限循环。相反,请尝试以下方法:</p>
<pre><code>while True:
(some code)
</code></pre>
<p><strong>在循环中定义函数</strong></p>
<p>在while循环中定义函数<code>main()</code>。据我所知,那是没有用的。省去第一个while循环。如果你定义了一个函数,它是永久的(很像变量),所以不需要每次都重新定义它。使用你的代码,你甚至不能调用函数,因为你永远不会结束第一个循环。在</p>
<p><strong>继续/中断不在循环中</strong></p>
<p>这个错误很容易自圆其说,但我们还是来吧。如果您要结束第一个循环(在本例中,您不会这样做),下一件事就是调用您的函数<code>main()</code>。这将产生一个数字,并让用户猜测,直到他正确。当这种情况发生时,您将退出该函数(和循环)。在</p>
<p>接下来,询问用户是否愿意再次播放。这只是一个输入语句。您将答案存储在变量“again”中。使用if语句进行检查(注意,这不是一个循环!)答案是什么。如果用户键入“y”,则希望用户再次播放,因此可以使用以下命令而不是使用<code>again != 'y'</code>:</p>
^{pr2}$
<p>如果输入了'n',则需要退出脚本,而不是通过键入<code>break</code>退出脚本,因为您不在循环中,只是在If语句中。您既可以不键入任何内容,也可以不输入if语句。因为if后面没有任何内容,所以您将退出脚本。您还可以使用<code>exit()</code>,它将立即退出脚本。在</p>
<p>最后,如果这两个问题都没有得到回答,您需要重复这个问题。可以将if语句放入循环中。你可以(如果你想的话)利用休息时间继续做这件事,但你最想避免这两件事。下面是一个例子:</p>
<pre><code>while True:
again = raw_imput('y for again or n to stop')
if again == 'y':
main()
exit() # use this if you don't want to ask to play again after the 2nd game
elif again == 'n':
print('bye!')
exit()
# no need for an 'else' this way
# every exit() can be replaced by a 'break' if you really want to
</code></pre>
<p><strong>基本中断/继续使用</strong></p>
<p>最后,这里是<code>break</code>和<code>continue</code>的一些基本用法。人们通常倾向于回避他们,但知道他们做什么是件好事。在</p>
<p>使用<code>break</code>将退出当前所处的最内部循环,但显然只能在循环内部使用它(对于循环或while循环)。在</p>
<p>使用<code>continue</code>将<strong>立即</strong>重新启动当前所在的最内部循环,而不管下一个代码是什么。而且,只能在循环内部使用。在</p>
<p><strong>一切都在一起</strong></p>
<pre><code>import random
again = 'y'
def main():
print ("gues a number between 0 - 10.")
nummer = random.randint(1,10)
found = False
while not found:
usergues = input("your gues?")
if usergues == nummer:
print ('Your the man')
found = True
else:
print ('to bad dude try again')
main()
while True:
again = input('would you like to play again press y to play again press n yo exit')
if again == 'n':
print ('bye!')
exit() # you could use break here too
elif again == 'y':
main()
exit() # you can remove this if you want to keep asking after every game
else:
print ('oeps i don\'t know what you mean plz enter y to play again or n to exit')
</code></pre>
<p>我希望我帮助过你!在</p>