4

我尝试在函数的定义中明确编写类型提示

# test.py
def annotated(x: int, y: str) -> bool:
    return x < y

运行python3.5 -m mypy test.py并收到以下消息

test.py:2: error: Unsupported operand types for > ("str" and "int")

这是正确的。但是当我尝试使用存根文件时

# test.py
def annotated(x, y):
    return x < y

# test.pyi
def annotated(x: int, y: str) -> bool: ...

我什么都没有。我看到了这个答案Using Mypy local stubs。所以我尝试import

from test import annotated

annotated(2, 3)

没关系。我有

error: Argument 2 to "annotated" has incompatible type "int"; expected "str"

但是电话annotated(2, 's')还是一无所获。
那么我应该怎么做才能检查存根文件的非法操作呢?谢谢

4

0 回答 0