大家好我是python初学者,有个问题问问大家
class A:
def prt(self):
print("A")
class B(A):
def prt(self):
print("B")
class C(A):
def prt(self):
print("C")
def test(arg):
arg.prt() #为什么test函数的参数arg能调用类中的prt方法?还是其中有什么隐藏操作?
a = A()
b = B()
c = C()
test(a)
test(b)
test(c)
a,b,c
分别是类A,B,C的实例,这些类都有prt
方法.即test函数只不过是做的对应的
a.prt(),b.prt(),c.prt()
方法调用.arg 只是形参,其对应的实参a,b,c实例。问题的本质函数体接收实例参数,体内使用了实例参数prt方法
函数调用-->接收实例参数 --> 调用实例方法