Python 派生 类 缺少一个必需的位置参数
Python Derived Classes Missing One Required Positional Argument
class Item(pygame.sprite.Sprite):
__metaclass__ = ABCMeta
def __init__(self, pos_x, pos_y, image_pass):
self.image = image_pass
self.rect = self.image.get_rect()
self.rect.x = pos_x
self.rect.y = pos_y
def draw(self, main_surface):
main_surface.blit(self.image, (self.rect.x, self.rect.y))
class Torch(Item):
def __int__(self, pos_x, pos_y):
factor = 5
self.battery = 100
self.brightness = 2
self.torch_image = resize(pygame.image.load("Torch.png"), factor)
super(Torch, self).__init__(pos_x, pos_y, self.torch_image)
错误消息:类型错误:init() 缺少 1 个必需的位置参数:'image_pass'
我正在调用火炬的对象:
火炬 = 火炬 (90,450)
我正在尝试加载图像以传递给基础 class... 项目。在 Torch class 中,我调用了基础 class 构造函数并将对象定义给出的 x 和 y 传递给它。
但是每当我尝试通过 "self.torch_image" 时,它都会给出上面看到的错误消息。
Resize() 不是问题,因为它已经在别处测试过并且有效。
非常感谢。
您的 Torch
class 有错字,应该是 __init__
,而不是 __int__
。因此,调用了 Item
的继承 __init__
方法。
class Item(pygame.sprite.Sprite):
__metaclass__ = ABCMeta
def __init__(self, pos_x, pos_y, image_pass):
self.image = image_pass
self.rect = self.image.get_rect()
self.rect.x = pos_x
self.rect.y = pos_y
def draw(self, main_surface):
main_surface.blit(self.image, (self.rect.x, self.rect.y))
class Torch(Item):
def __int__(self, pos_x, pos_y):
factor = 5
self.battery = 100
self.brightness = 2
self.torch_image = resize(pygame.image.load("Torch.png"), factor)
super(Torch, self).__init__(pos_x, pos_y, self.torch_image)
错误消息:类型错误:init() 缺少 1 个必需的位置参数:'image_pass'
我正在调用火炬的对象: 火炬 = 火炬 (90,450)
我正在尝试加载图像以传递给基础 class... 项目。在 Torch class 中,我调用了基础 class 构造函数并将对象定义给出的 x 和 y 传递给它。 但是每当我尝试通过 "self.torch_image" 时,它都会给出上面看到的错误消息。
Resize() 不是问题,因为它已经在别处测试过并且有效。
非常感谢。
您的 Torch
class 有错字,应该是 __init__
,而不是 __int__
。因此,调用了 Item
的继承 __init__
方法。