【发布时间】:2021-07-08 09:21:36
【问题描述】:
class 语句接受各种功能的关键字参数。例如,__init_subclass__ 函数接收在类声明中传递的关键字参数:
class A(object):
def __init_subclass__(cls, **kwargs):
print(f'{kwargs=}')
class B(A, my_arg=5):
pass
kwargs={'my_arg': 5}
但是,这样做会阻止动态类创建:type 函数似乎没有采用 class 关键字参数。 A factory function does,但在工厂必须修改类时可能与__init_subclass__或类似冲突。
我想在其 3 参数版本中使用 type() 内置函数来动态创建一个类。但是,似乎没有记录传递关键字参数的方法(如前面示例中的my_arg)。
推荐的做法是什么?
【问题讨论】:
标签: python