Maison >développement back-end >Tutoriel Python >Comment fonctionne le constructeur `super()` en Python ?

Comment fonctionne le constructeur `super()` en Python ?

Linda Hamilton
Linda Hamiltonoriginal
2024-11-18 00:07:02889parcourir

How Does the `super()` Constructor Work in Python?

Invocation de super constructeurs en Python

Dans le monde de la programmation, le super constructeur joue un rôle crucial dans l'appel du constructeur de la classe parent. Comme vous l'avez mentionné, l'attente d'utiliser super() en Python peut sembler évidente en raison de sa familiarité avec d'autres langages de programmation. Cependant, Python propose une approche légèrement différente de cette invocation.

Dans Python 3 et au-delà, le constructeur de superclasse peut être invoqué à l'aide d'une syntaxe simplifiée :

class A(object):
    def __init__(self):
        print("world")

class B(A):
    def __init__(self):
        print("hello")
        super().__init__()

Cette syntaxe remplace la précédente plus longue formulaire utilisé dans Python 2 :

class A(object):
    def __init__(self):
        print "world"

class B(A):
    def __init__(self):
        print "hello"
        super(B, self).__init__()

Dans Python 2, vous deviez spécifier le nom de la classe contenant dans l'appel de la méthode super(). Cependant, dans Python 3, la syntaxe du double trait de soulignement (__) a introduit un raccourci qui vous permet d'omettre ce paramètre, ce qui entraîne un code plus propre.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn