【发布时间】:2020-06-22 07:37:50
【问题描述】:
我有以下 Python 模块:
from typing import TypedDict
class P(TypedDict):
x: int
def return_p() -> P:
return {'x': 5}
p = return_p()
p['abc'] = 1
def test():
p = return_p()
p['abc'] = 2
当我在其上运行mypy 时,它正确地抱怨p['abc']=1 行,但忽略了p['abc']=2 行中完全相同的问题。
这发生在 Windows 10 上,使用 Python 3.8 和 mypy 0.781。 Python 3.7 也会出现同样的行为(我需要从 typing_extensions 导入 TypedDict)
发生了什么事?
【问题讨论】:
标签: python mypy python-typing