pygame的Sprite精灵类为什么没有属性
本帖最后由 guitarliu 于 2022-5-22 11:33 编辑import pygame
a = pygame.sprite.Sprite()
print(a.image)
按道理Sprite精灵类中已经封装了image和rect属性,为什么不能输出呢?
输出结果报错:AttributeError: 'Sprite' object has no attribute 'image'
因为 pygame.sprite.Sprite 是个基类,主要用于规范子类
我们使用需要在我们的子类的 构造函数 中对 image 属性进行初始化,才能具体调用
import pygame
a = pygame.sprite.Sprite()
print(a.__dict__)
输出结果:
{'_Sprite__g': {}}
import pygame
class Test(pygame.sprite.Sprite):
def __init__(self, image):
pygame.sprite.Sprite.__init__(self)
self.image = image
test = Test("Test")
print(test.__dict__)
输出结果:
{'_Sprite__g': {}, 'image': 'Test'}
页:
[1]