Chapitre 15. En savoir plus sur les indications de type
Cet ouvrage a été traduit à l'aide de l'IA. Tes réactions et tes commentaires sont les bienvenus : translation-feedback@oreilly.com
J'ai appris une leçon douloureuse : pour les petits programmes, le typage dynamique est excellent. Pour les grands programmes, tu as besoin d'une approche plus disciplinée. Et cela aide si le langage te donne cette discipline plutôt que de te dire "Eh bien, tu peux faire ce que tu veux".
Guido van Rossum, un fan des Monty Python1
Ce chapitre est une suite du chapitre 8, couvrant davantage le système de types graduels de Python. Les principaux sujets abordés sont les suivants :
-
Signatures de fonctions surchargées
-
typing.TypedDictpour l'indication de typedictsutilisé comme enregistrement -
Moulage de type
-
Accès aux indications de type en cours d'exécution
-
Types génériques
-
Déclarer une classe générique
-
Variance : types invariant, covariant et contravariant
-
Protocoles statiques génériques
-
Nouveautés de ce chapitre
Ce chapitre est une nouveauté de la deuxième édition de Fluent Python. Commençons par les surcharges.
Signatures surchargées
Les fonctions Python peuvent accepter différentes combinaisons d'arguments. Le décorateur @typing.overload permet d'annoter ces différentes combinaisons. C'est particulièrement important lorsque le type de retour de la fonction dépend du type de deux ou plusieurs paramètres.
Considère la fonction intégrée sum. Voici le texte de help(sum)