我想有一个自定义的元类,looks like的定义是TypedDict
.
当你声明一个新的TypedDict
,我们写这样的东西:
from typing import TypedDict
class MyClass(TypedDict, total=False):
pass
但是,当我声明一个元类时,它看起来像这样:
class MetaSerial(type):
def __new__(pls, name, bases, act, exclude: list[str] = [], custom: list[str] = []):
dct["_exclude"] = exclude
dct["_custom"] = custom
return super().__new__(cls, name, bases, dct)
class Serial(metaclass=MetaSerial, exclude=["value"], custom=["terminals"]):
pass
所以,百万美元的问题是:有没有一种方法让我摆脱恼人的metaclass=,并使用类似的东西:
class Serial(MetaSerial, exclude=["value"], custom=["terminals"]):
pass