Python 3.6.0类继承

时间:2018-01-12 21:45:19

标签: python

class Animal:
def __init__(self, name, species): 
    self.name = name
    self.species = species

    def getName(self):
        return self.name

    def getSpecies(self):
        return self.species

    def __del__(self):
        print ("This came from del method")


class Dog(Animal):
    pass
    def __init__(self, name, isBig):
        Animal.__init__(self, name, "Dog")
        self.isBig = isBig

我一直在玩理解类和子类,并遇到了以下问题。实例化时

dog = Dog("Bob", True)

并尝试从父类,Animal,类访问方法getName()我收到以下错误:

Traceback (most recent call last):
File "<pyshell#2>", line 1, in <module>
dog.getName()
AttributeError: Dog instance has no attribute 'getName'

什么阻止我直接访问父类的方法?

1 个答案:

答案 0 :(得分:2)

不要忘记缩进在Python中很重要!

以下是Artisan::call('queue:work');类中所有方法的代码应该是什么样的:

Animal

如果您错过了缩进块,Python会认为您已经完成了类定义。