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字典中定義的屬性和方法。最后通過實例化類,并調用方法來驗證類的創建是否成功。