Сбор типов возврата из Vararg Callable для использования в другом месте в подписи?Python

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Сбор типов возврата из Vararg Callable для использования в другом месте в подписи?

Сообщение Anonymous »

У меня есть следующая подпись функции: < /p>

Код: Выделить всё

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 (особенно, когда вызовы возвращают разные типы друг от друга).
Я уже проверил pep 646, но раздел, который у них был актуал, был «Acture Table Tibubiaiblens». Callable < /code> », который я не мог видеть, как применить к этой ситуации. < /P>
Я пропустил решение, или этот вариант использования еще не рассматривается с помощью экосистемы типа 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
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Python»