在面向对象的程序设计中类和对象是其重要角色,我们知道对象是由类实例化而来,那么类又是怎么生成的呢?答案是通过元类。本篇文章将介绍元类相关知识,并剖析元类生成类的过程,以及元类的使用等内容,希望能帮助到正在学习python的同仁。
一、一切皆对象在python中有这样一句话“一切皆对象”,没错你所知道的dict、class、int、func等等都是对象,让我们来看以下一段代码来进行说明:
#!/usr/bin/env python3 # -*- coding:utf-8 -*- # Author:wd class Foo(object): pass def func(): print('func') print(Foo.__class__) print(func.__class__) print(int.__class__) print(func.__class__.__class__) 结果: <class 'type'> <class 'function'> <class 'type'> <class 'type'>