此代码用于创建步行动画。我不知道是什么导致属性错误。
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'
代码有什么问题?
答案 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})
我想通过这个错误就可以解决