Je veux créer mon propre type paramétrés en Python pour être utilisé dans le type hinting:Comment puis-je créer mon propre type "paramétré" en Python (comme `Optional [T]`)?
class MaybeWrapped:
# magic goes here
T = TypeVar('T')
assert MaybeWrapped[T] == Union[T, Tuple[T]]
Ne vous préoccupez pas exemple artificiel; comment puis-je l'implémenter? J'ai regardé la source pour Union et Facultatif, mais cela ressemble à un hackery assez bas que je voudrais éviter. La seule suggestion dans la documentation vient d'un example re-implementation of Mapping[KT,VT]
that inherits from Generic. Mais cet exemple est plus sur la méthode __getitem__
que sur la classe elle-même.
Merci, en utilisant 'TypeVar' voici ce qui me manquait. Assez incroyable que les génériques "fonctionnent" comme ça. – shadowtalker