python教程

python元类冲突的问题

python教程 51源码 2022-11-30 人阅读

1、子类多重继承时,多个父类之间拥有不同的元类,此时会产生错误。

2、多个父类中涉及的所有元类之间拥有继承关系。

3、自己构建一个元类,继承父类中涉及到的所有元类。

实例

class Meta1(type):
    def __new__(mcs, *args, **kwargs):
        return super(Meta1, mcs).__new__(mcs, *args, **kwargs)
 
# 变化部分:Meta2继承Meta1
class Meta2(Meta1):
    def __new__(mcs, *args, **kwargs):
        return super(Meta2, mcs).__new__(mcs, *args, **kwargs)
 
class Body(metaclass=Meta1):
    pass
 
class Head(metaclass=Meta2):
    pass
 
class Human(Body, Head):
    pass

以上就是python元类冲突的问题,希望对大家有所帮助更多Python学习指路:python基础教程

本文教程操作环境:windows7系统、Python 3.9.1,DELL G3电脑。

版权声明:文章搜集于网络,如有侵权请联系本站,转载请说明出处:https://www.51yma.cn/jiaocheng/python/876.html
文章来源:Python学习网-https://www.py.cn//jishu/jichu/34066.html
标签 python 元类