【发布时间】:2021-10-25 03:58:55
【问题描述】:
在 Python 中,您可以使用函数 my_type = type(name, bases, dict) 动态创建类型。你将如何为这种类型my_type 指定一个元类? (理想情况下,除了定义一个简单地将元类绑定到实例化子类的一次性 class 对象)
【问题讨论】:
-
这有点令人困惑,因为
type像这样调用是一个元类。如果你有一些其他的元类,它将是type的子类,可能还有它自己的__new__()。如果你想要一个 that 类型的类,你只需按照你制作这个的方法制作一个:some_meta(name, bases, dict). -
@Mark 不正确 - 这将跳过正确解析元类基础的步骤。
-
嗯,我相信你是对的@wim。但是想出一个具体的例子时遇到了麻烦。
-
@Mark 在PEP 560中给出了一个具体的例子。
-
实际上只是阅读想法this source 这很清楚。谢谢@wim。