Не все списки одинаковы с точки зрения ввода.Программа
def f(some_list: list):
return [i*2 for i in some_list]
f(['a', 'b', 'c'])
не сможет выполнить проверку статического типа, даже если она не будет работать.В отличие от этого, вы можете указать содержимое списка, используя абстрактные типы из typing
def f(some_list: List[int]) -> List[int]:
return [i*2 for i in some_list]
f(['a', 'b', 'c'])
, что приведет к ошибке, как и должно быть.