覆盖派生类的方法

问题描述 投票:0回答:1

我有以下编码:-

Progam 1

class Person :

    '''A base to define Person properties.'''

    def __inti__( self , name ):
        self.name = name

    def speak( self , msg = '(Calling The Base Class)' ):
        print( self.name , msg )

计划2

from Person import *
'''A derived class to define Man properties.'''

class Man( Person ):
        def speak( self , msg ):
                print( self.name , ':\n\tHello!' , msg )

计划3

from Person import *
'''A derived class to define Hombre properties.'''

class Hombre( Person ):
        def speak( self , msg ):
                print( self.name , ':\n\tHola!' , msg )

计划4

from Man import *
from Hombre import *

guy__1 = Man('Richard')
guy__2 = Hombre('Ricardo')
guy__1.speak( 'It\'s a beautiful evening.\n' )
guy__2.speak( 'Es una tarde hermosa.\n' )
Person.speak( guy__1 )
Person.speak( guy__2 )

我得到以下错误;-guy__1 = Man('Richard')TypeError: object() takes no parameters

overriding
1个回答
0
投票

改变

def __inti__( self , name ):

def __init__( self , name ):
© www.soinside.com 2019 - 2024. All rights reserved.