所以我有一个程序应该附加一个名为 Rectangle 的类的 10 个实例,它为矩形创建随机属性。如果我从列表中打印多个对象,它们会显示为不同的值,但如果我为多个对象调用绘制函数,屏幕上只会出现一个。
这是整个代码: http: //pastebin.com/hb6LBjss
这里重要的代码是这些,第一个是矩形类,第二个将一个矩形附加到一个空列表 10 次,第三个在主程序循环中,应该绘制所有 10 个。
谢谢。
1.
class Rectangle():
x = random.randrange(0, 701)
y = random.randrange(0, 501)
width = random.randrange(20,71)
height = random.randrange(20,71)
change_x = random.randrange(-3,4)
change_y = random.randrange(-3,4)
def move(self):
self.x += self.change_x
self.y += self.change_y
def draw(self):
pygame.draw.rect(screen, green, [self.x,self.y, self.width, self.height], 0)
2.
myList = []
for i in range(10):
myList.append(Rectangle())
3.
for i in myList:
i.draw()
我已经尝试了一大堆不同的东西,但是每次屏幕上只有一个矩形。
for i in range(10):
x = myList[i]
x.draw()