首页 > 编程语言 > 详细

Python的元类简单介绍

时间:2019-05-28 23:37:15      阅读:130      评论:0      收藏:0      [点我收藏+]

* 类型 和类

在Python中,一切都是对象。类也是对象。所以一个类必须有一个类型


注意:
1.type Python3中所有的类都是通过type来创建出来的
2.object:Python3中所有类的顶级父类都是object


# 使用type创建类
"""
1.第一个参数是类的名字 str 类型
2.第二个参数是继承的父类 tuple 类型
3.第三个参数类定义的属性,跟方法名 dict 类型
"""

# 创建方法,放到第三个参数里面就可以,调用
def func(self):
print("你好")

Test = type("Test", (object,), {"name": "张三","func":func})


自定义元类

1.自定义元类必须继承于type
2.type创建类:三个参数

"""
1.第一个参数是类的名字 str 类型
2.第二个参数是继承的父类 tuple 类型
3.第三个参数类定义的属性,跟方法名 dict 类型
"""
例子:
# 自定义元类
class MyMetaClass(type):

  def __new__(cls, name, bases, namespace, *args, **kwargs):
  return super().__new__(cls, name, bases, namespace)

# 通过自定义元类来创建类
class Test(metaclass=MyMetaClass):
  name = "张三"


# 父类指定元类,子类可以继承父类所指定的元类
class MyClass(Test):
  pass

t = Test()
print(type(Test))
结果:<class ‘__main__.MyMetaClass‘>
print(Test.__dict__)

Python的元类简单介绍

原文:https://www.cnblogs.com/666666pingzi/p/10940998.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!