/ / Python 2.7 typy podpowiedzi do wywoływania typów w PyCharm - python-2.7, pycharm, typ-podpowiedź

Typy podpowiedzi typu Python 2.7 w PyCharm - python-2.7, pycharm, typ-hinting

Próbuję użyć podpowiedzi typu w python 2.7 zgodnie z opisem tutaj.

Mam funkcję, która oczekuje parametru wywoływanego (funkcja) z określonym sygnaturą jako parametrem i nie mogę wymyślić, jak ją opatrzyć komentarzem.

Próbowałem

def set_function(self, function):
# type: ((int) -> None) -> None

Ale PyCharm pokazuje oczekiwane ")" i nieoczekiwane błędy tokeny

Nie mogę znaleźć żadnej dokumentacji dla tego ...

Odpowiedzi:

3 dla odpowiedzi № 1

Prawidłowy sposób udokumentowania wywołania w Pycharmie (lub w innym narzędziu, które rozumie PEP 484 wpisz wskazówki) jest jak poniżej:

from typing import Callable

def set_function(self, function):
# type: (Callable[[int], None]) -> None
...

Ponieważ używasz Pythona 2, musisz zainstalować typing moduł PyPi, jeśli jeszcze tego nie zrobiłeś. (typing została dodana do standardowej biblioteki Pythona w wersji 3.5, moduł na PyPi to backport).

Możesz znaleźć więcej informacji na temat korzystania z modułu do pisania w Dokumentacja Pythonaoraz w dokumentacji dla mypy.

(Jeśli nie jesteś świadomy, mypy jest narzędziem wiersza poleceńto także rozumie wskazówki typu PEP 484, a także statycznie analizuje i koryguje twój kod. Jest to niezależny wysiłek od wbudowanego modułu sprawdzania pisowni Pycharm, ponieważ zarówno Pycharm, jak i mypy używają typów PEP 484, dokumentacja mypy jest często dobrym miejscem, aby zacząć szukać informacji na temat używania podpowiedzi typu.)