Klassen-String-Darstellung anpassen
In Python sind Klassen Objekte und haben daher ihre eigene String-Darstellung. Standardmäßig ist diese Darstellung
Um diese Anpassung zu erreichen, wird eine Metaklasse verwendet. In Python ist eine Metaklasse eine Klasse, die andere Klassen erstellt. Durch die Implementierung der Methode __str__ oder __repr__ in einer Metaklasse kann die Zeichenfolgendarstellung der Klasse angepasst werden.
Die Methode __str__ bietet eine vom Benutzer lesbare Zeichenfolgendarstellung, während __repr__ eine eindeutige Darstellung für Entwicklung und Debugging bereitstellt. Hier ist ein Beispiel mit __repr__:
class MC(type): def __repr__(self): return 'Wahaha!' class C(object): __metaclass__ = MC print(C) # Prints 'Wahaha!'
In Python 3 wird das __metaclass__-Attribut durch ein Metaclass-Schlüsselwortargument ersetzt. Hier ist die Python 3-Version des Beispiels:
class MC(type): def __repr__(self): return 'Wahaha!' class C(object, metaclass=MC): pass print(C) # Prints 'Wahaha!'
Das obige ist der detaillierte Inhalt vonWie kann ich die String-Darstellung einer Klasse in Python anpassen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!