Meine IDE (PyCharm) versagt die automatische Vervollständigung folgendes:Typing mit integrierten Kartenfunktion
from typing import List, TypeVar
T = TypeVar('T')
def listify(x: T) -> List[T]:
return [x]
str_list: List[str] = ['a', 'b']
listified = map(listify, str_list)
listified[0].<TAB> # autocomplete fail, IDE fails to recognize this is a List
Ist das ein Problem mit meinem IDE, oder ist typing
nicht kompatibel mit map
?
Was auch immer die Antwort, ich durch Umwickeln map
zu beheben versucht:
from typing import Callable, Iterable, List, TypeVar
T = TypeVar('T')
U = TypeVar('U')
def listify(x: T) -> List[T]:
return [x]
def univariate_map(func: Callable[[T], U], x: Iterable[T]) -> Iterable[U]:
return map(func, x)
str_list: List[str] = ['a', 'b']
listified = univariate_map(listify, str_list)
listified[0].<TAB> # still fails to autocomplete
Auch dies ist ein Problem mit meinem IDE, oder sind meine Erwartungen an das typing
Modul nicht richtig?
Hoppla, das war albern. Tut mir leid, ich hätte versuchen sollen, etwas echten Code zu schreiben, anstatt nur zu versuchen, die Autovervollständigung durchzuführen. Vielen Dank! – dshin
@abccd ok! Du hast mich da wirklich verwirrt :) – MSeifert