擅长:python、mysql、java
<p>在函数<strong>xturn</strong>中,</strong>的变量(以及所有其他2个字母的变量)不可用。在</p>
<p>我强烈建议您使用增量编程:编写几行代码,使其正常工作,然后放大您的程序。这使您可以很容易地将注意力集中在错误上。每当我攻击一种新的编程风格时,我都觉得这很有用。看来你对这里使用的一些技术还不熟悉。在</p>
<p>例如,您在</strong>中使用<strong>而不是<strong>==</strong>进行比较。这不是一个普遍的原则。在</p>
<p>在主程序之前声明函数。按照你写这篇文章的方式,你在每次循环中都要重新定义你的函数。将函数移到顶部也可以解决许多变量范围问题。在</p>
<p>学习使用布尔值和变量。循环应该如下所示:</p>
<pre><code>while True:
cont = True
while cont:
</code></pre>
<hr/>
<p>通过将变量作为参数传递给函数,可以使变量可用。我可以看出你是新手,因为你给了这个函数一个从未使用过的参数<strong>x</strong>。在</p>
<p>总的来说,你不应该有9个变量:你应该有一个列表,然后把整个列表作为游戏板的当前状态来传递。如果你把方格编号为0-8,你可以很容易地在这方面与董事会合作。在</p>
<hr/>
<p>要解决当前的问题,您可以在每个例程中添加以下行:</p>
^{pr2}$
<p>这将使变量可用。我知道托马斯已经指出了这一点。在</p>
<p>不过,我还是鼓励你把这个设计得更干净。使用全局变量通常是糟糕的设计。另外,请注意要为这个程序复制多少代码?它应该容易得多。在</p>