Создание значения по умолчанию рекурсивно по заданному типу (types.GenericAlias)Python

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Создание значения по умолчанию рекурсивно по заданному типу (types.GenericAlias)

Сообщение Anonymous »

При наличии типа t (изначально полученного из аннотаций функций) мне нужно создать значение по умолчанию для этого типа. Обычно t() делает именно это и работает для многих типов, включая базовые типы, такие как bool или int. Однако tuple[bool, int]() возвращает пустой кортеж, что не является правильным значением по умолчанию. С более сложными типами, такими как tuple[bool, list[int]], все может быть немного сложнее.
Я видел этот tuple[bool, int].__args__ возвращает (, ), что может быть полезно для написания рекурсивной функции, реализующей это, но у меня все еще возникают с этим проблемы.Существует ли существующая функция, позволяющая сделать это и вернуть значение по умолчанию? Если нет, то как мне написать этот код для работы со всеми стандартными типами?
Я использую Python 3.11.

Подробнее здесь: https://stackoverflow.com/questions/790 ... nericalias
Реклама
Ответить Пред. темаСлед. тема

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

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

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

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

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

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