如何执行所有这些类

时间:2016-11-15 04:17:39

标签: python class

我无法打印所有这些。我错过了什么?

class Animal():
    def __init__(self):
        print("I am an animal")

class Mammal(Animal):
    def __init__(self,mouse, dog, cat):
        self.mouse = mouse
        self.dog = dog
        self.cat = cat
        print("I am a mammal")

    def Mouse_mammal(self):
        mouse = "I am a mouse"
        print(mouse)

    def Dog_mammal(self):
        print("I am a dog")

    def Cat_mammal(self):
        print("I am a cat")

class Reptile(Animal):
    def __init__(self):
        print("I am a reptile")

    def Alligator_reptile(self):
        print("I am a reptile")

    def Lizard_reptile(self):
        print("I am a lizard")

2 个答案:

答案 0 :(得分:0)

定义类后,必须创建每个类的实例。你必须调用每个类的每个方法。例如

animal = Animal()
mammal = Mammal()

mammal.Mouse_mammal('mouse', 'dog', 'cat')
mammal.Dog_mammal()
mammal.Cat_mammal()

reptile = Reptile()
reptile.Alligator_reptile()
reptile.Lizard_reptile()

答案 1 :(得分:0)

您的代码什么都不做。

我的意思是,它确实声明并定义了很多东西,但确实没有。

基本上,你的代码所做的是描述你的情况:你有动物,可以是哺乳动物或爬行动物......但这就是全部。

如果你想得到一些反馈,比如打印,你必须让这些事情发生。您已定义,并且必须实例化它们。这样做如下:

>>> lizard = Reptile()
>>> lizard.Lizard_reptile()
"I am a lizard"

然而,你似乎对你正在做的事情有点困惑,从方法名称的大写字母的使用来判断。在您的代码中,Lizard_reptileAlligator_reptile方法,而不是类。这意味着不存在例如蜥蜴的对象。

您似乎想要使用继承,并创建一个继承自Lizard的{​​{1}}和Alligator类,这是此问题的逻辑概念。

嗯,这与您从Reptile继承的ReptileMammals一样完成。