为什么“ get_rect()”不能用于列表?

时间:2019-07-28 21:42:00

标签: python python-3.x pygame

我正在为精灵创建碰撞命中箱,但是当我尝试使用get_rect时,会发生此错误:

AttributeError: 'list' object has no attribute 'get_rect'

有人知道如何对图像列表进行此操作吗?

scarn_up = [pygame.image.load('Michael Scarn Up 1.png'), pygame.image.load('Michael Scarn Up 2.png')]
scarn_up_rect = scarn_up.get_rect(topleft=(340, 150))

1 个答案:

答案 0 :(得分:1)

列表没有get_rect方法。您想对列表中存储的pygame.Surface对象执行此操作。您可能想要对每个对象执行此操作,并将其结果存储在另一个列表中:

scarn_up = [pygame.image.load('Michael Scarn Up 1.png'), pygame.image.load('Michael Scarn Up 2.png')]
scarn_up_rect = [x.get_rect(topleft=(340, 150)) for x in scarn_up]