阅读量:0
Python中可以使用type()
函数动态创建类。
type()
函数的三个参数分别是:
- 类的名称(字符串类型)
- 类继承的父类(元组类型)
- 类的属性和方法(字典类型)
以下是一个示例代码,演示了如何使用type()
函数动态创建类:
# 定义类的属性和方法 attributes = { 'name': 'DynamicClass', 'age': 20, 'get_name': lambda self: self.name, 'set_name': lambda self, name: setattr(self, 'name', name), } # 使用 type() 函数创建类 DynamicClass = type('DynamicClass', (), attributes) # 创建类的实例 obj = DynamicClass() # 调用类的方法 print(obj.get_name()) # 输出: DynamicClass # 动态修改类的属性 obj.set_name('NewClass') print(obj.get_name()) # 输出: NewClass
以上代码中,attributes
字典定义了类的属性和方法,其中name
是一个字符串类型的属性,get_name
是一个获取name
属性值的方法,set_name
是一个设置name
属性值的方法。
然后使用type()
函数创建了DynamicClass
类,该类继承自空的父类()
,并且具有attributes
字典中定义的属性和方法。最后通过实例化类,并调用方法来验证类的创建是否成功。