почему pytype не помечает столкновение типа integer / string? - PullRequest
0 голосов
/ 05 октября 2019

только что увидел аккуратную презентацию о pytype сегодня, поэтому я решил проверить это. Не могу понять, почему это не работает. (Я надеюсь использовать его, чтобы помочь мне преобразовать кодовую базу Python 2.7 в 3.x)

Сначала попробуйте, вот файл с именем "thing.py "

def want_two_strings(a, b):
    # type: (str, str) -> str
    return 1

want_two_strings(1, 2)

Давайте попробуемэто

$ pytype something.py

[snip]
File "/home/chris/pytd/website/foo/something.py", line 3, in want_two_strings: bad option in return type [bad-return-type]
  Expected: str
  Actually returned: int
[snip]

Да, он нашел ошибку! Давайте исправим это:

def want_two_strings(a, b):
    # type: (str, str) -> str
    return "hello"

want_two_strings(1, 2)

Давайте попробуем еще раз

$ pytype something.py

[snip]
Success: no errors found

Подождите, что? Это довольно очевидная ошибка.

...