Maison  >  Article  >  développement back-end  >  Exemple de tutoriel sur l'utilisation des méthodes de classe spéciale Python

Exemple de tutoriel sur l'utilisation des méthodes de classe spéciale Python

零下一度
零下一度original
2017-05-23 14:53:021790parcourir

Il est temps de reparler d'exemples. Cette fois, nous parlons d'exemples de tutoriels sur l'utilisation des méthodes de classe spéciale Python.

1.__getitem__Méthode spécialisée

1 >>> map = {'name':'c小加'}
2 >>> map.__getitem__("name")
3 'c\xe5\xb0\x8f\xe5\x8a\xa0'

redirige simplement vers le dictionnaire et renvoie la valeur du dictionnaire
2.__setitem__Méthode spécialisée

 >>> map = {'name':'c小加'}
2 >>> map.__setitem__('monaker','队花')
3 >>> map
4 {'monaker': '\xe9\x98\x9f\xe8\x8a\xb1', 'name': 'c\xe5\xb0\x8f\xe5\x8a\xa0'}

Map est en fait une classe. Elle prétend être un dictionnaire autant que possible, tout comme C Xiaojia, prétend être la star de l'équipe autant que possible, même s'il est un homme.

 >>> map['monaker'] = '队花'
 >>> map
{'monaker': '\xe9\x98\x9f\xe8\x8a\xb1', 'name': 'c\xe5\xb0\x8f\xe5\x8a\xa0'} 
这个看上去像个正常的字典语法,这行代码实际上暗自调用了map.__setitem__('monaker','队花')

Le remplacement de la méthode __setitem__ dans une classe est strictement défini sous la même forme que la méthode de la classe parent. Le nom du paramètre n'a pas d'importance, juste le numéro. Dans le même temps, lors de l'appel direct de la classe parent, bien qu'il n'y ait pas de __setitem__, Python parcourra l'arborescence des classes parent jusqu'à ce qu'il trouve la classe dans laquelle nous appelons la méthode.
3 .__repr__ est une méthode spécialisée qui est appelée lorsque repr(instance) est appelée. repr function est une fonction intégrée qui renvoie une représentation sous forme de chaîne d'un objet. Il peut être utilisé sur n’importe quel objet, pas seulement sur des instances de classes. Vous avez déjà répondu à repr Assez familier même si vous ne le savez pas. Dans la fenêtre interactive, lorsque vous tapez simplement un nom de variable puis appuyez sur ENTRÉE, Python utilise repr pour afficher la valeur de la variable. Créez un dictionnaire d avec quelques données, puis utilisez print repr(d) pour y jeter un œil.

4.__cmp__ est appelé lors de la comparaison d'instances de classe. Généralement, vous pouvez comparer deux objets Python en utilisant == Des objets, pas seulement des instances de classe. Certaines règles définissent quand les types de données intégrés sont considérés comme égaux. Par exemple, les dictionnaires sont égaux s'ils ont tous les mêmes clés et valeurs. Pour les instances de classe, vous pouvez définir __cmp__, écrivez votre propre logique de comparaison, vous pourrez ensuite utiliser == pour comparer vos classes, et Python appellera votre méthode spéciale __cmp__ pour vous.
5.__len__ est appelé lorsque len(instance) est appelé. len est une fonction intégrée qui renvoie la longueur d'un objet. Il peut être utilisé pour tout objet dont on pense qu’il a une longueur méritante. chaîne len est son nombre de caractères ; len d'un dictionnaire est le nombre de ses mots-clés ; len d'une liste ou d'une séquence est le nombre d'éléments. Pour les instances de classe, définissez __len__ méthode, puis écrivez votre propre calcul de longueur, puis appelez len(instance), et Python appellera votre méthode spéciale __len__ pour vous.
6.__delitem__ Appelé lorsque del instance[key] est appelé, vous vous en souviendrez peut-être comme supprimant un seul du Méthodes des éléments du dictionnaire. Lorsque vous utilisez del sur une instance de classe, Python appelle la méthode privée __delitem__ pour vous.

Les méthodes privées signifient que n'importe quelle classe peut contenir des paires clé-valeur comme un dictionnaire en définissant une méthode __setitem__. N'importe quelle classe peut se comporter comme une séquence en définissant Méthode __getitem__. Toute classe qui définit une méthode __cmp__ peut être comparée en utilisant ==. Et si votre classe semble avoir quelque chose comme la longueur, ne définissez pas GetLength, définissez plutôt la méthode __len__ et utilisez len(instance).

[Recommandations associées]

1 Compréhension approfondie de la fonction spéciale __len__(self) en python.

2. Peu de connaissances à maîtriser - explication détaillée des exemples de len Python

Résumé du len( ) fonction dans Python Exemples d'utilisation

4 Les méthodes magiques Python __getitem__, __setitem__, __delitem__, __len__ sont introduites respectivement

.

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