Мне удалось mypy
выполнить проверку типа на NamedTuple
и использовать значения по умолчанию для NamedTuple
.
Однако при использовании значения по умолчанию у меня всегда возникает ошибка на mypy
.
Вот мой код (я использую Python 3.6)
class TestResult(NamedTuple):
"""To store results of a given Test Case"""
outcome: str
duration: Optional[int] # in seconds
comment: Optional[str]
msg: Optional[str]
TestResult.__new__.__defaults__ = (None,) * 3 # type: ignore # Hack for Python < 3.7
Когда я делаю passed_tc = TestResult("Passed")
, у меня появляется следующее сообщение об ошибке
ошибка: слишком мало аргументов для "TestResult"
Кто-нибудь получил представление о том, как сказать mypy
, что мы можем иметь необязательные аргументы и избежать этой ошибки?