mypy如何检测pyi文件?

问题描述 投票:0回答:1

我正在尝试为模块设置类型检查,但未应用 pyi 文件。我感觉我在某个地方犯了一些愚蠢的错误,但我无法弄清楚它是什么。

这是我尝试过的:

blah.pyi 文件:

def func(x : int) -> int : ...

blah.py 文件:

def func(x):
    return x

reveal_type(func)
print(func(''))

目录结构:

root
|- blah.pyi
|- blah.py

Mypy 命令:

...\root> python -m mypy blah.py
blah.py:4: note: Revealed type is "def (x: Any) -> Any"
Success: no issues found in 1 source file
...\root> python -m mypy.stubtest blah.py
error: blah.py failed to find stubs
Stub:
MISSING
Runtime:
N/A
python mypy python-typing
1个回答
0
投票

您缺少

py.typed
文件。

根据 PEP 561 – 分发和打包类型信息,如果存在

py.typed
标记文件,mypy 仅考虑支持类型检查的包:

希望支持代码类型检查的包维护者必须将名为

py.typed
的标记文件添加到支持类型的包中。

© www.soinside.com 2019 - 2024. All rights reserved.