我已经能够有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我们可以有可选参数并避免此错误?
慕姐4208626
相关分类