Python MyPy不';t引发不同文件之间的类型不匹配
在具有以下结构的目录中:Python MyPy不';t引发不同文件之间的类型不匹配,python,python-3.x,python-3.8,mypy,Python,Python 3.x,Python 3.8,Mypy,在具有以下结构的目录中: src/ my_module/ foo.py bar.py 我使用mypysrc/mymodule运行MyPy 如果单个文件中存在以下内容(例如foo.py): #foo.py def-hey(无论如何:str)->int: 返回234 嘿(22) 然后MyPy会抱怨,这是它应该抱怨的 $mypy src/myu模块 src/my_module/foo.py:4:错误:“hey”的参数1具有不兼容的类型“int”;预期的“str” 但是,如果一
src/
my_module/
foo.py
bar.py
我使用mypysrc/mymodule
运行MyPy
如果单个文件中存在以下内容(例如foo.py
):
#foo.py
def-hey(无论如何:str)->int:
返回234
嘿(22)
然后MyPy会抱怨,这是它应该抱怨的
$mypy src/myu模块
src/my_module/foo.py:4:错误:“hey”的参数1具有不兼容的类型“int”;预期的“str”
但是,如果一个文件从另一个文件调用函数:
#foo.py
def-hey(无论如何:str)->int:
返回234
#巴比
来自foo import嘿
嘿(22)
然后MyPy没有发现错误:
$mypy src/mymodule
成功:在2个源文件中未发现任何问题
如何确保MyPy检查不同文件之间的类型一致性?使用MyPy 0.770,我得到:
my_模块/bar.py:3:错误:参数1到“hey”的类型不兼容“int”;应为“str”
您是否有\uuuuu init\uuuuuuu.py
文件mypy
可能将foo
/hey
解析为Any
否则。