所以我一直在制作RPG游戏,在继承和解包方面遇到了一些麻烦。我试图对我遇到的问题做一个简单的版本:
class Animal():
def __init__(self,name):
self.name = name
def say_noise(self):
noise = "I am an animal"
by_who = "Animal"
return noise,by_who
class Dog(Animal):
def __init__(self,name):
self.name = name
def say_noise(self):
Animal.say_noise(self)
animal = Animal("man")
doggy = Dog("name")
我想做的是在Animal类和Dog类中返回相同的两件事。现在,当我对Animal进行say_noise()时,它可以正常工作,因为它返回:
('I am an animal', 'Animal')
但是,当我对Dog类执行此操作时,它什么也不返回,我也尝试将它们解包(这是我在实际代码中要实现的目标,但是在执行此操作时。)>
a,b =doggy.say_noise()
它只返回此:
TypeError:无法解包不可迭代的NoneType对象
如何仅通过从父类继承它来使用相同的类方法返回相同的东西?
所以我一直在制作RPG游戏,在继承和解包方面遇到了一些麻烦。我试图对我遇到的问题进行简单的描述:Animal()类:def __init __(self,...
这是因为游览没有从Dog
类say_noise
方法返回任何内容。像这样更新您的代码,