python的元类type学习总结

python的元类type学习总结,第1张

python的元类type学习总结

type是元类,也就是python中所有的类其实本质上都是type这个类的实例化后的对象

type的作用是干什么呢?
1、我们直接type()来判断一个对象的类型。type不是一个类吗?为什么可以直接去调用呢?因为type类其实也是一个对象,是自己的类的对象,而type类中实现了__cal__()这个方法,我们知道只要实现了__cal__()这个方法的类,那么该类实例化的对象就可以直接被调用,也就是可调用对象,即callable。
下面给个例子:

print(type(1))
print(type('abc'))
print(type([]))

运行结果:




其实判断一个对象的类型,还可以通过isinstance()来判断。

print(isinstance((),tuple))
print(isinstance('abc',str))
print(isinstance([],list))

运行结果:

True
True
True

2、type的第二个作用就是:创建类,其实这个不常用,一般我们都是使用class去调用,而不是使用type;
比如像下面这种:

type("Foo", (object,), {"a":1})

具体参照:https://www.zhihu.com/question/407857516讲的挺好的。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5572391.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-14
下一篇 2022-12-14

发表评论

登录后才能评论

评论列表(0条)

保存