Python Fonction super()
Description
super()La fonction est utilisée pour appeler une méthode de la classe parente (superclasse).
super()Elle est utilisée pour résoudre les problèmes d'héritage multiple. Appeler directement une méthode de la classe parente avec le nom de la classe convient pour l'héritage simple, mais avec l'héritage multiple, cela implique divers problèmes tels que l'ordre de résolution des méthodes (MRO), les appels répétés (héritage en diamant), etc.
MRO est la table d'ordre de résolution des méthodes d'une classe, qui est en fait la table d'ordre utilisée lors de l'héritage des méthodes de la classe parente.
Syntaxe
Voici la syntaxe de la méthode super() :
super(type[, object-or-type])
Parameters
- type -- classe.
- object-or-type -- classe, généralement self
Une différence entre Python3.x et Python2.x est : Python 3 peut directement utilisersuper().xxxau lieu desuper(Class, self).xxx :
Exemple Python3.x :
Exemple Python2.x :
Valeur de retour
Aucun.
Exemple
Ce qui suit montre un exemple d'utilisation de la fonction super :
Exemple
Résultat de l'exécution :
Parent Child HelloWorld from Parent Child bar fuction I'm the parent.Autres extensions
Fonctions intégrées de Python