用Pygame绘制正方形; draw方法只需要整数?

时间:2014-11-23 00:32:39

标签: python pygame

我正在尝试使用Pygame在白色屏幕上绘制一些黑色方块。这是使用pygame.draw.rect()方法的问题:

pygame.draw.rect(screen, BLACK, (10, 10, 10, 10), 0) #no error

但实际上我有很多黑色方块可以绘制,所以我想要这样的东西:

a1 = (10, 10, 10, 10)
a2 = (20, 20, 10, 10)
A = [a1, a2]
for i in A:
   pygame.draw.rect(screen, BLACK, A[i], 0) #gives error

TypeError: list indices must be integers, not tuple

但如果我尝试这个,我就不会收到错误:

pygame.draw.rect(screen, BLACK, a1, 0) #no error

有什么想法吗?

1 个答案:

答案 0 :(得分:0)

您循环遍历数组元素(元组)而不是A的索引。有几种方法可以执行您想要的操作。以下是我想到的前两个:

for i,_ in enumerate(A):

for i in range(len(A)):