On vous l’a dit et répété : Python est un langage à typage dynamique ! Ah... donc, on ne peut pas réaliser de surcharge de fonctions ou de méthodes ? Pour les débutants, on dira non, pour les autres, on peut toujours s’arranger avec Python...
Une des bases de la programmation orientée objet (POO) est la surcharge, plus communément connue sous son nom anglais d’overloading. Le principe est simple : il peut y avoir plusieurs méthodes portant le même nom, mais dont la signature est différente. En fonction du type des paramètres transmis à la méthode, ce sera la méthode qui prend en charge ces paramètres qui sera exécutée... et c’est là que le bât blesse en Python, puisque le typage dynamique permet d’écrire des choses de ce type :
Si nous voulons effectuer des tâches spécifiques en fonction du type de val1 et val2, nous sommes coincés !
Qu’à cela ne tienne, nous allons voir dans cet article comment utiliser le module functools pour réaliser de la surcharge en Python !
1. La surcharge de...
- Accédez à tous les contenus de Connect en illimité
- Découvrez des listes de lecture et des contenus Premium
- Consultez les nouveaux articles en avant-première