Méthodes Python Dunder

Méthodes Python Dunder
Les méthodes Dunder sont également appelées techniques spéciales qui sont un ensemble de méthodes prédéfinies en Python qui peuvent être utilisées pour améliorer vos classes. Parce qu'ils commencent et se terminent par de doubles soulignements, tels que __init__ ou __str__, ils sont facilement identifiables. Dans Python, ces «Dunders» ou «Méthodes spéciales» sont parfois appelés «méthodes magiques."Cependant, l'adoption de cette phrase peut rendre les choses plus sophistiquées qu'elles ne sont. Ces techniques devraient être gérées comme si elles avaient des aspects de langage intégrés.

Les méthodes Dunder sont des méthodes intrinsèques python extrêmement fortes qui peuvent être utilisées pour développer des classes complexes. Cette leçon fournit un guide étape par étape des méthodes Python et comment les utiliser, avec des exemples. La cohérence de la popularité de Python peut être retracée à la popularité de la langue. Pour des méthodes intrinsèques comme ABS (), Len (), Trised () et bien d'autres, Python vous permet d'implémenter vos objets personnalisés. Tout ce que vous avez à faire maintenant est d'ajouter des méthodes uniques à votre classe (méthodes Dunder).

Dans cet article, nous avons utilisé des phrases comme les méthodes de Dunder, les méthodes magiques et les techniques spéciales, qui entrent toutes dans la même catégorie. Avant d'aller dans le tutoriel, vous devez être conscient de quelque chose. Les programmeurs Python qui sont expérimentés avec la programmation orientée objet (OOP) reconnaîtront la méthode __init__. La méthode Dunder a été nommée d'après les doubles soulignements, qui sont connus sous le nom de Dunder in Python. Parce qu'il existe des méthodes magiques dans Ruby qui remplissent le même objectif, certains programmeurs Python les appellent comme tels dans Python. Nous les appelons généralement des méthodes spéciales parce que c'est ce que le manuel Python les appelle. En conséquence, si vous voyez ces méthodes en python, supposons que ce sont des méthodes spéciales.

Exemple 1:

Semblable aux constructeurs d'autres langages de programmation, lorsqu'une instance de classe est formée, la fonction __init__ pour l'initialisation est invoquée sans aucun appel. Dans les classes Python, «__init__» est une méthode réservée. Dans la terminologie orientée objet, il est appelé objet de fonction () [code natif]. Cette méthode est invoquée lorsqu'un objet est formé à partir d'une classe pour permettre à la classe de remplir ses propriétés. Nous pouvons utiliser l'opérateur '+' pour combiner deux chaînes sans avoir besoin d'appliquer une dactylographie explicite en raison de ces méthodes. Voici un exemple détaillé de la façon d'effectuer ce. Nous avons d'abord déclaré notre classe de chaînes, suivie de la fonction magique pour créer un objet. La création d'objet est terminée après le code du pilote et l'emplacement de l'objet est signalé à la fin.

Les lignes de code ci-dessus impriment simplement l'adresse mémoire de l'objet String.

Exemple 2:

Nous utiliserons la méthode __repr__ pour représenter notre objet dans l'exemple suivant. La méthode magique __repr__ représente une instance de classe dans une chaîne. Lorsque nous essayons d'imprimer un objet de classe, la fonction __repr__ est appelée, qui donne une chaîne. Par défaut, rep () renvoie la représentation de chaîne de la valeur fournie à la fonction EVAL. Par défaut, l'objet de classe personnalisé fournit une chaîne dans des supports d'angle contenant le nom et l'adresse de l'objet. À l'exception de l'ajout de la méthode __Repr__ après avoir utilisé la méthode magique pour initialiser l'objet, le code est le même qu'avant.

Ici, vous pouvez voir que ce qui précède a affiché avec succès la chaîne.

Exemple 3:

Nous allons maintenant ajouter la fonction __add__ à la classe String. Les attributs de l'instance de classe sont ajoutés en utilisant la méthode magique __add__. Imaginons que Object1 appartient à la classe A et à l'objet2 à la classe B et que ces deux classes ont un attribut nommé «A» qui contient un entier. Une fois l'opération Object1 + Object2 terminé, la fonction __Add__ ajoute implicitement les attributs de ces objets, tels que l'objet1.A + Object2.un. Nous avons réinitialisé la classe String dans le code, comme vous pouvez le voir dans la première ligne de code. Après cela, nous avons utilisé la façon magique de démarrer l'objet. L'objet String a ensuite été imprimé en utilisant la méthode __add__. L'objet est créé après le code du pilote, qui est la ligne de code suivante. Dans la dernière ligne de code, nous avons concaténé un objet de chaîne avec une chaîne.

String de classe:

Vous trouverez ci-dessous la sortie du code ci-dessus.

Conclusion:

Les méthodes magiques sont des méthodes Python avec des soulignements doubles au début et à la conclusion. Les méthodes ou techniques dunder sont un autre nom pour eux. Les méthodes magiques ne sont pas destinées à être appelées directement par l'utilisateur; Au lieu de cela, ils sont appelés en interne par la classe en réaction à une action spécifique. La méthode __add __ () est appelée interne lorsque vous utilisez l'opérateur + pour ajouter deux nombres, par exemple. Les classes intégrées de Python définissent beaucoup de méthodes magiques. Pour savoir combien de méthodes magiques d'une classe a héritée, vous pouvez utiliser la fonction dir ().