属性错误:' builtin_function_or_method'对象没有属性'追加'

时间:2018-02-11 09:35:07

标签: python attributes pygame

此代码用于创建步行动画。我不知道是什么导致属性错误。

class player(pygame.sprite.Sprite):
    def init(self):
        pygame.sprite.Sprite.init(self)
        self.images = []
        for i in range(1, 5):
            img = pygame.image.load(os.path.join('Assets','Arts','xeonsheet','xeonsheet_' + str(i) + '.png'))
            self.images.append(img)
            self.images = self.images[0]
            self.images = self.images.get_rect

player = player()
player_list = pygame.sprite.Group()
player_list.add(player)
Traceback (most recent call last):
  File "C:/Users/User/PycharmProjects/Dreamwind-Chronicles/main.py", line 121, in <module>
    player = player()
  File "C:/Users/User/PycharmProjects/Dreamwind-Chronicles/main.py", line 117, in init
    self.images.append(img)
Attribute Error: 'builtin_function_or_method' object has no attribute 'append'

代码有什么问题?

2 个答案:

答案 0 :(得分:0)

目前还不完全清楚你的最终目的是什么,但是通过代码追踪,我可以看到你用self.images函数覆盖get_rect

self.images.append(img)
self.images = self.images[0]
self.images = self.images.get_rect

重复此代码后,self.images现在是get_rect函数。 我猜你只是想删除最后两行,然后在渲染时访问图像的属性?

答案 1 :(得分:-2)

第一次插入要列出的对象时,应该插入

array = []
array.insert(index,{Object})
array.append({Object})

我想通过这个错误就可以解决