我试图遍历一个numpy的2d数组,并检查值1,2和3在数组中出现的位置,但是我收到一个值错误,因为numpy指出其模棱两可。解决此问题的最佳方法是什么?
for x in range(row):
for y in range(row):
if grid[x,y] == 1:
pygame.draw.rect(window, (0,255,0), (x * distance, y * distance, distance, distance))
elif grid[x,y] == 2:
pygame.draw.rect(window, (0,255,0), (x * distance, y * distance, distance, distance))
elif grid[x,y] == 3:
pygame.draw.rect(window, (255,0,0), (x * distance, y * distance, distance, distance))
if grid[x,y] == 1:
ValueError: The truth value of an array with more than one element is ambiguous. Use a.any() or a.all()
答案 0 :(得分:0)
尝试使用grid[x][y]
而不是grid [x,y]
答案 1 :(得分:0)
根据您的generateGrid
函数,显示在注释中,
在grid[i.x, i.y]
函数中将grid[i.x][ i.y]
替换为generateGrid
。
这已解决了您的问题。