问答

python函数参数问题

作者:admin 2021-04-30 我要评论

大家好我是python初学者,有个问题问问大家 class A: def prt(self): print("A")class B(A): def prt(self): print("B")class C(A): def prt(self): print("C")d...

在说正事之前,我要推荐一个福利:你还在原价购买阿里云、腾讯云、华为云服务器吗?那太亏啦!来这里,新购、升级、续费都打折,能够为您省60%的钱呢!2核4G企业级云服务器低至69元/年,点击进去看看吧>>>)

大家好我是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方法
函数调用-->接收实例参数 --> 调用实例方法

###

python 中除了两个下划线开头的方法(如 __private_method)都是公有的,也就是可以用 object.public_method 的方式来调用,这也是方法被制造出来的目的啊

版权声明:本文转载自网络,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。本站转载出于传播更多优秀技术知识之目的,如有侵权请联系QQ/微信:153890879删除

相关文章
  • python函数参数问题

    python函数参数问题

  • Mac上的vscde上的codehaper无法关闭,

    Mac上的vscde上的codehaper无法关闭,

  • win 录制系统声音、监控麦克风应用?

    win 录制系统声音、监控麦克风应用?

  • 为啥webpack4使用happyPack开启多进程

    为啥webpack4使用happyPack开启多进程

腾讯云代理商
海外云服务器