Код: Выделить всё
Y = Annotated[TypeVar("Y"), "That which might be yielded"]
R = Annotated[TypeVar("R"), "That which might be returned"]
def teeinto_constantmemory(
it: Iterable[Y],
*consumer_callables: Callable[[Iterable[Y]], R]
) -> Tuple[R, ...]: ...
- Это не указывает на то, что длина возвращаемого значения равна количеству Consumer_callables . Тупел имеет тот же тип, что и return Type n -th элемент Consumer_callables (особенно, когда вызовы возвращают разные типы друг от друга).
Я пропустил решение, или этот вариант использования еще не рассматривается с помощью экосистемы типа Python? /> [*]
Код: Выделить всё
Iterable
[*]
Код: Выделить всё
Callable[[Iterable], int]
[*]
Код: Выделить всё
Callable[[Iterable], float]
[*]
Код: Выделить всё
Callable[[Iterable], str]
[*] Callable[[Iterable], FooType]< /code> < /p>
< /li>
< /ol>
Тогда возвращаемое значение будет иметь типа < /p>
- Tuple[int, float, str, FooType]
Подробнее здесь: https://stackoverflow.com/questions/765 ... -signature