下面是我的代码
n = 4
m = 4
figures = [1,2,2]
def almostTetris(n, m, figures):
grid = [[0] * m] * n
def shape1(count):
for i in range(n):
for j in range(m):
if grid[i][j] == 0:
print(grid[i][j])
print(grid[1][0])
print(grid[2][0])
print(grid[3][0])
grid[i][j] = count
print(grid[i][j])
print(grid[1][0])
print(grid[2][0])
print(grid[3][0])
return
def shape2(count):
for i in range(n):
for j in range(m - 2):
if grid[i][j] == 0 and grid[i][j + 1] == 0 and grid[i][j + 2] == 0:
grid[i][j] = grid[i][j + 1] = grid[i][j + 2] = count
return
for i in range(len(figures)):
if figures[i] == 1:
shape1(i + 1)
elif figures[i] == 2:
shape2(i + 1)
return grid
print(almostTetris(n, m, figures))
这是我打印出来的:
0
0
0
0
1
1
1
1
[[1, 2, 2, 2], [1, 2, 2, 2], [1, 2, 2, 2], [1, 2, 2, 2]]
我的问题是如何grid[i][j] = count将第一列中的所有数字转换为 1(计数值)?我以为因为i和j都是0,所以只有第一个元素会变成1。
HUX布斯
相关分类