擅长:python、mysql、java
<p>这些条件应该与<code>or</code>相联系,而不是与<code>and</code>相联系,因为您可以通过在一行中生成任意3个来赢得tic tac toe。与<code>and</code><em>一起,一行中的每个</em>3必须相同。你知道吗</p>
<p>它在第一个回合后结束的原因是,您没有检查单元格是否已实际填充。所以一个空的行、列或对角线将被认为是匹配的,因为所有的空格都是相等的。你知道吗</p>
<p>与其只是检查它们是否相等,不如检查它们是否等于<code>turn</code>。你知道吗</p>
<pre><code> if( theBoards['A'] == theBoards['B'] == theBoards['C'] == turn
or theBoards['D'] == theBoards['E'] == theBoards['F'] == turn
or theBoards['G'] == theBoards['H'] == theBoards['I'] == turn
or theBoards['A'] == theBoards['D'] == theBoards['G'] == turn
or theBoards['B'] == theBoards['E'] == theBoards['H'] == turn
or theBoards['C'] == theBoards['F'] == theBoards['I'] == turn
or theBoards['A'] == theBoards['E'] == theBoards['I'] == turn
or theBoards['C'] == theBoards['E'] == theBoards['G'] == turn):
</code></pre>