0

我是 Python 的新手。我知道这个问题没用。但我对我的问题感到沮丧。我在基类中定义了 2 个方法Animals。当我尝试在继承的类中调用基方法时,它显示以下错误: NameError: name 'display_name' is not defined

class Animals():
    def display_name(self):
        print ('Name is Mr.X')        
    def display_age(self):
        print('Age is 25')    
class Name(Animals):
    display_name(self)
class Age(Animals):
    display_age(self)

n=Name()
a=Age()
n.display_name()
a.display_age()
4

1 回答 1

2

您需要display_name使用前缀引用函数,而不是作为参数self传递。self

此外,正如 Antimony 所指出的,您需要在display_name与类实例关联的函数内调用 from(在接受self参数的函数内)。

出现在方法函数外部但在类内部的代码与整个类相关联,而不与该类的任何特定实例相关联——self在这种情况下使用变量没有意义——如果你从它所引用的类创建多个对象到?

class Animals():
    def display_name(self):
        print ('Name is Mr.X')

    def display_age(self):
        print('Age is 25')    

class Name(Animals):
    def call_display_name(self):
        self.display_name()

class Age(Animals):
    def call_display_name(self):
        self.display_age()

Name().call_display_name()
于 2013-04-09T13:01:28.823 回答