【发布时间】:2020-03-09 10:23:33
【问题描述】:
在为 Leetcode 问题编写代码 sn-p 时,我注意到我的 Python3 数组没有按预期更新。
基本上,我有一个二维数组,列出了井字游戏的玩家动作。玩家 A 先玩,玩家 B 下,玩家 A 下,依此类推。我的第一步是在二维数组上表示这些移动。下面列出的数组moves 提到了要更新的 3x3 井字棋网格的 (x,y) 坐标。
(0,0) | (0,1) | (0,2)
_______|_________|________
(1,0) | (1,1) | (1,2)
| |
_______|_________|________
(2,0) | (2,1) | (2,2)
| |
moves = [[0,0],[2,0],[1,1],[2,1],[2,2]]
arr=[['']*3]*3
#print(arr)
for i in range(len(moves)):
xC=moves[i][0]
yC=moves[i][1]
if(i%2==0):
#playerA
arr[xC][yC]='X'
else:
#playerB
arr[xC][yC]='O'
print(arr)
变量 'moves' 列出了井字游戏中 9 个盒子中仅 5 个盒子的数量,但输出数组 'arr' 是这样填充的:
[['O', 'O', 'X'], ['O', 'O', 'X'], ['O', 'O', 'X']]
仅供参考:我已经使用 Py3 几年了,我对它很满意(不是新手)。 你对这个问题有什么看法? Py3 的数组模块中的错误?让我知道。 (顺便说一句,我的第一个 StackOverflow 问题!)
问题在这个地址:https://leetcode.com/problems/find-winner-on-a-tic-tac-toe-game/
【问题讨论】:
-
请更正您的代码。 int 变量 i 不允许下标。
-
谢谢!我也更新了。
标签: python arrays python-3.x