Ji-won nouveau rapport
Source: GitHub
Auteur: Rafe Kettler
Compiler: trois pierres
[Introduction de nouveaux Zhi Yuan Python] méthode magique fait référence à des méthodes pour augmenter la classe personnalisée « magique » fonctions permettent. En Python document officiel, la présentation ou la description non seulement sur ces méthodes de dispersion et la structure organisationnelle est relativement lâche. Ce document sera de façon magique Python pour faire un système de cardage. Pour les débutants ou les experts seront Python, sont plus ou moins seront un peu d'aide.
Homme de peu de mots dit, directement sur le thème!
Guide annuaire magique Python
brève introduction
Mettre en place et l'initialisation
Application de l'opérateur dans la classe personnalisée
Comparer la méthode magique
digital magic
Description classe personnalisée
attributs de contrôle d'accès
Faire une séquence personnalisée
réflexion
appelables
contexte directeur
Construit objet descripteur
brève introduction
Quelle est la façon magique pour le faire? Ils sont tous orientés en Python, il est une méthode spéciale permet la définition de leurs définitions de classe ajouter la fonction « magique ». Ils utilisent toujours un double underscore (comme __init__ ou __lt__), mais leur documentation ne sont pas bien l'exprimer. Toutes ces méthodes magiques apparaissent dans la documentation officielle de Python, mais le contenu est relativement structure organisationnelle décentralisée apparaît également lâche. Vous y trouverez un exemple difficile (mais ils sont très bonne conception, sont décrits en détail dans la référence de la langue, et sera accompagné d'ennuyeux descriptions de grammaire, etc.).
Pour compenser ces défauts Python document officiel, les auteurs mettent ensemble cet article sur la méthode magique, conçu pour les cours, l'examen ou la documentation de référence.
Mettre en place et l'initialisation
Je crois que nous sommes familiers avec la méthode magique les plus élémentaires __init__. Il peut vous faire un comportement d'initialisation personnalisé d'un objet. Et quand je l'appelle x = SomeClass temps, __ init__ pas le premier à être appelé. En fait, il y a une méthode appelée __new__, en fait, est qu'il crée une instance de celui-ci pour passer un processus d'initialisation des paramètres pour atteindre l'objectif de la création. A la fin du cycle de vie de l'objet, appelez __del__. Que ces trois méthodes magiques plus près à elle:
__new __ (cls,