以下是代码:
class Enemies():
def __init__(self):
self.list = []
self.number= random.randrange(8)
self.image= pygame.image.load("C:/Users/Aitor/Desktop/Odin.png")
self.rect= self.image.get_rect
self.run_across= 0 #El numero que recorrera la lista
for x in range(self.number):
self.list.append(self.rect)
self.list[self.run_across].top= random.randrange(20,50)
self.list[self.run_across].left= random.randrange(20,50)
self.run_across += 1
self.run_across= 0
错误在:self.list[self.run_across].top= random.randrange(20,50)
该代码应该在列表中保存一些具有随机尺寸但具有相同图像的区域。我不知道为什么会出现这个错误。
答案 0 :(得分:1)
self.rect
设置为函数对象:
self.rect= self.image.get_rect
您随后将其添加到list
属性:
for x in range(self.number):
self.list.append(self.rect)
这是例外引用的builtin_function_or_method
类型;该方法是用C语言实现的。也许你的意思是调用它?
self.rect = self.image.get_rect()