我目前正在编写一个函数来在 Python3 中玩四连棋。我在大部分过程中都取得了很好的进展,但在两个玩家之间交替时遇到了麻烦。
我想做的是运行一个函数,根据当前玩家的函数将筹码放置在适当的位置,playturn(curr)。所以我想说的是,虽然没有平局,也没有赢家,但比赛将继续进行,并在两名选手之间交替进行。
如果轮到玩家 1,curr=1,如果轮到玩家 2,则 curr=2。
我当前的代码不工作,因为如果没有平局或没有赢家,它不允许我在每个回合后在玩家之间切换。我的逻辑是,如果 curr=1 最初是 1,那么我必须在第一步之后设置 curr=2。然后,当 curr=2 时,我必须将 curr equal 切换回 1。在下面的代码中,checkforwinner 和 checkfortie 是两个函数如果没有赢家并且没有平局,将返回 False。 playturn(curr) 将根据 Player1 或 Player2 选择的列将筹码放在正确的列中。
curr=1
while checkforwinner==False and checkfortie==False:
if curr==1:
curr==2
print(playturn(curr))
if curr==2:
curr==1
print(playturn(curr))
有人可以解释为什么这段代码不起作用以及如何修复它吗?
请您参考如下方法:
curr==2 是比较。您可能需要 curr=2。第二个 if 应该是一个 elif。
