教程集 www.jiaochengji.com
教程集 >  Python编程  >  Python入门  >  正文 python3顶层父类多次循环怎么办?

python3顶层父类多次循环怎么办?

发布时间:2020-12-07   编辑:jiaochengji.com
教程集为您提供python3顶层父类多次循环怎么办?等资源,欢迎您收藏本站,我们将为您提供最新的python3顶层父类多次循环怎么办?资源

之前我们又讲过循环,能够把我们节省很多重复的工具。不过在顶层父类中,这种循环重复命令不一定能带给我们想要的结果。那么,我们该如何改变这种重复执行命令的操作呢?小编最近有学到super,借用类的知识来教大家,相信小伙伴们在学类的时候也更加印象深刻了吧。


如何避免顶层父类中的某个方法被执行多次呢,此时就需要super()来发挥作用了,super本质上是一个类,内部记录着MRO信息,由于C3算法确保同一个类只会被搜寻一次,这样就避免了顶层父类中的方法被多次执行了,比如针对钻石继承问题2中的代码可以改为:

class A(object):
    def m(self):
        print("m of A called")
 
class B(A):
    def m(self):
        print("m of B called")
        super().m()
 
class C(A):
    def m(self):
        print("m of C called")
        super().m()
 
class D(B,C):
    def m(self):
        print("m of D called")
        super().m()


此时打印的结果就变成了:

m of D called
m of B called
m of C called
m of A called


以上就是python3顶层父类多次执行同一个命令,我们所用到的解决办法。如果还有更好的方法,也可以跟小编一起学习交流,毕竟不是所有的循环都是我们所需要的。

您可能感兴趣的文章:
python3顶层父类多次循环怎么办?
Python(for和while)循环嵌套及用法
python怎么循环嵌套
linux shell学习之shell流程控制
php循环语句控制break与continue的用法举例
Python多重继承中的菱形继承
jquery $.each 和for怎么跳出循环终止本次循环
学习使用javascript获取父节点的方法
PHP多进程、信号量及孤儿进程和僵尸进程
python怎么写有死循环的程序

[关闭]
~ ~