type()函数有两种功能:
- type(obj) :用来查看某个变量或类对象的具体类型
- type(name, bases, dict):用来创建类,name表示类名;bases表示一个元组,存储的是该类的父类;dict表示一个字典,表示类内定义的属性或方法
用type()函数创建一个新类
# 定义一个实例方法
def say(self):
print("hellogo")
# 使用type()函数创建类
Person = type("Person",(object,),dict(say=say,name="张三"))
# Person = type("Person",(object,),{"say":say,"name":"张三"})
# 创建一个Person类的实例对象
per = Person()
# 调用say方法和name属性
per.say()
print(per.name)
事实上,在使用 class 定义类时,Python 解释器底层依然是用 type() 来创建这个类