Personnalisation de la représentation sous forme de chaîne de classe
En Python, les classes sont des objets et ont donc leur propre représentation sous forme de chaîne. Par défaut, cette représentation est
Pour réaliser cette personnalisation, une métaclasse est utilisée. En Python, une métaclasse est une classe qui crée d'autres classes. En implémentant la méthode __str__ ou __repr__ dans une métaclasse, la représentation sous forme de chaîne de la classe peut être personnalisée.
La méthode __str__ fournit une représentation sous forme de chaîne lisible par l'utilisateur, tandis que __repr__ fournit une représentation sans ambiguïté pour le développement et le débogage. Voici un exemple utilisant __repr__ :
class MC(type): def __repr__(self): return 'Wahaha!' class C(object): __metaclass__ = MC print(C) # Prints 'Wahaha!'
Dans Python 3, l'attribut __metaclass__ est remplacé par un argument de mot-clé métaclasse. Voici la version Python 3 de l'exemple :
class MC(type): def __repr__(self): return 'Wahaha!' class C(object, metaclass=MC): pass print(C) # Prints 'Wahaha!'
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!