枚举的类方法的类型注释

时间:2020-09-30 03:21:19

标签: python python-3.x mypy

我正在努力正确地注释我在枚举上定义的类方法。 MyPy不断向我抛出错误

class _Event(Enum):
    def __init__(self, value: int, description: str):
        self._value_ = value
        self.__doc__ = description
...
    @classmethod
    def actOnEvent(cls: Type["EventClass"], event_string: str) -> Tuple[Type["Eventclass"], str, int]
        token, eventnum, data = event_string.strip().split(None, 2)
        event = cls(cast(int, eventnum))
        return event, token, event.action(token, data)
...


EventClass = TypeVar("EventClass", bound=_Event)

cls(eventnum)通话中,MyPy仍然出现错误。 _Event是一个枚举,cls(eventnum)应返回值为eventnum的_Event实例(实际上是_Event的子类),但是MyPy抱怨 too few arguments for _Event

0 个答案:

没有答案
相关问题