Python __str__ Beispiel

Python __str__ Beispiel
Die __STR__ -Funktion in Python wird einfach verwendet, um die Ausgabe der Python -Funktionen in einem String -Format zurückzugeben. Diese Funktion wird hauptsächlich mit den benutzerdefinierten Funktionen verwendet, da ihre Ausgänge im Allgemeinen nicht im String-Format enthalten sind. Um diese Ausgänge einfacher zu verstehen, müssen sie in das String -Format umgewandelt werden. Für die benutzerdefinierten Klassen müssen Sie jedoch zuerst diese Funktion implementieren. Darüber hinaus wird eine andere Funktion, die als __Repr__ -Funktion bekannt ist. Daher können Sie entweder diese beiden Funktionen definieren, oder zumindest müssen Sie die __Rep__ -Funktion definieren. Sie können diesen Artikel vollständig durchlesen, um die Verwendung dieser Funktion in Python zu verstehen.

Beispiele für __str__ in Python in Windows 10

Im Folgenden finden Sie einige der unterschiedlichen Verwendungen der __STR__ -Funktion von Python. Indem Sie diese Beispiele gründlich durchlaufen, werden Sie verstehen, wie sich die Funktionalität dieser Funktion zwischen den Standard- und benutzerdefinierten Klassen unterscheidet.

Beispiel 1

In diesem Beispiel wollten wir eine vordefinierte oder standardmäßige Python-Klasse verwenden, ich.e., datetime, mit der __str__ -Funktion. Hier möchten wir angeben, dass für die vordefinierten oder Standardklassen alle diese Funktionen standardmäßig implementiert werden. Sie müssen sie nicht manuell definieren. Der Code, den wir für das Demonstration dieses Beispiels geschrieben haben, lautet wie folgt:

In diesem Python -Code haben wir zuerst den Standard importiert “Terminzeit" Klasse. Danach deklarierten wir eine Variable benannt “aktuellUnd ihm den Wert der "zugewiesen" zugewiesen "Terminzeit.Jetzt()"Funktion der"Terminzeit”Python -Klasse. Diese Funktion gibt das aktuelle Systemdatum und die aktuelle Zeit zurück. Danach wollten wir den Wert der __STR__ -Funktion gefolgt von dem Wert der __Repr__ -Funktion drucken.

Die Ausgabe, die als Ergebnis der Ausführung dieses Python -Skripts erzeugt wird, ist im Bild unten gezeigt:

Wir wissen, dass die __STR__- und __Repr__-Funktionen standardmäßig implementiert wurden, da wir eine vordefinierte Klasse verwendet haben, i, ich.e., Terminzeit. Die __STR__ -Funktion gab einfach die Ausgabe der “zurück“Terminzeit.Jetzt()Funktion in Form einer Zeichenfolge. Im Gegensatz dazu gab die __Repr__ -Funktion die Ausgabe der “zurückTerminzeit.Jetzt()Funktionen in einem Format, bei dem diese Ausgabe rekonstruiert werden kann. Der Punkt, den hier zu beachten ist.

Beispiel 2

In diesem Beispiel wollten wir die __STR__-Funktion mit einer benutzerdefinierten Klasse auf eine Weise verwenden. Der Code, den wir für das Demonstration dieses Beispiels geschrieben haben, lautet wie folgt:

In diesem Python -Code haben wir eine Klasse mit dem Namen "deklariert"Mitarbeiter”. Dann haben wir seine Attribute initialisiert, die EMP_NAME und EMP_ID waren. Danach haben wir ein Objekt der “erstellt“Mitarbeiter”Klasse, ich.e., “E"Und mit Hilfe dieses Objekts haben wir eine Mitarbeiterinstanz mit dem EMP_NAME erstellt"Hasan”Und emp_id“1”. Schließlich haben wir einfach den Wert der __STR__ -Funktion gedruckt, gefolgt vom Wert der __Repr__ -Funktion. Wir möchten noch einmal erwähnen, dass wir noch keine dieser Funktionen implementiert haben.

Die Ausgabe, die als Ergebnis der Ausführung dieses Python -Skripts erzeugt wurde, ist im Bild unten gezeigt:

Da wir uns in diesem Beispiel mit einer benutzerdefinierten Klasse befasst haben, sollten wir die Funktionen __str__ und __Rep__ selbst implementieren. Wir haben dies jedoch nicht getan, weshalb wir einfach die Adresse der “erhalten haben“MitarbeiterObjekt wie unsere Ausgabe.

Beispiel 3

In diesem Beispiel wollten wir die __STR__-Funktion mit einer benutzerdefinierten Klasse verwenden, damit nur die __Rep__-Funktion definiert wird und nicht die __str__-Funktion. Der Code, den wir für das Demonstration dieses Beispiels geschrieben haben, lautet wie folgt:

In diesem Python -Code haben wir eine Klasse mit dem Namen "deklariert"Mitarbeiter”. Dann haben wir seine Attribute initialisiert, die EMP_NAME und EMP_ID waren. Wir haben auch die Funktion __Repr__ definiert, und diese Definition wird nach unserer eigenen Wahl angepasst. Danach haben wir ein Objekt der “erstellt“Mitarbeiter”Klasse, ich.e., “E"Und mit Hilfe dieses Objekts haben wir eine Mitarbeiterinstanz mit dem EMP_NAME erstellt"Hasan”Und emp_id“1”. Schließlich haben wir einfach den Wert der __STR__ -Funktion gedruckt, gefolgt vom Wert der __Repr__ -Funktion.

Die Ausgabe, die als Ergebnis der Ausführung dieses Python -Skripts erzeugt wurde, ist im Bild unten gezeigt:

Da wir die Funktion __Rep__ in unserem Code definiert haben, wurde dieselbe Definition verwendet, um die Ausgabe sowohl der __Rep__ als auch der __STR__ -Funktionen zu erzeugen.

Beispiel 4

In diesem Beispiel wollten wir die __STR__-Funktion mit einer benutzerdefinierten Klasse auf eine Weise verwenden. Der Code, den wir für das Demonstration dieses Beispiels geschrieben haben, lautet wie folgt:

In diesem Python -Code haben wir eine Klasse mit dem Namen "deklariert"Mitarbeiter”. Dann haben wir seine Attribute initialisiert, die EMP_NAME und EMP_ID waren. Wir haben auch die Funktionen __Rep__ und __str__ definiert, und diese Definitionen werden nach unserer eigenen Wahl angepasst. In der Funktion __str__ wird die Ausgabe in Form einer vollständigen Anweisung angezeigt, während die Funktion __Rep__ einfach die Ausgangswerte der Zeichenfolge in unserem Fall zurückgibt. Danach haben wir ein Objekt der “erstellt“Mitarbeiter”Klasse, ich.e., "E" und mit Hilfe dieses Objekts haben wir eine Mitarbeiterinstanz mit dem EMP_NAME erstellt "Hasan”Und emp_id“1”. Schließlich haben wir einfach den Wert der __STR__ -Funktion gedruckt, gefolgt vom Wert der __Repr__ -Funktion.

Die Ausgabe, die als Ergebnis der Ausführung dieses Python -Skripts erzeugt wurde, ist im Bild unten gezeigt:

Da sowohl die __STR__- als auch die __Repr__ -Funktionen in unserem Code definiert wurden und die Definitionen dieser beiden Funktionen voneinander unterschiedlich waren, sind die Ausgänge dieser beiden Funktionen unterschiedlich.

Beispiel 5

In diesem Beispiel wollten wir die __STR__-Funktion mit einer benutzerdefinierten Klasse so verwenden, dass nur die __str__-Funktion definiert wird und nicht die __Rep__-Funktion. Der Code, den wir für das Demonstration dieses Beispiels geschrieben haben, lautet wie folgt:

In diesem Python -Code haben wir eine Klasse mit dem Namen "deklariert"Mitarbeiter”. Dann haben wir seine Attribute initialisiert, die EMP_NAME und EMP_ID waren. Wir haben auch die __STR__ -Funktion definiert, und diese Definition wird nach unserer eigenen Wahl angepasst. Danach haben wir ein Objekt der “erstellt“Mitarbeiter" Klasse, "E", Und mit Hilfe dieses Objekts haben wir eine Mitarbeiterinstanz mit dem EMP_NAME erstellt"Hasan”Und emp_id“1”. Schließlich haben wir einfach den Wert der __STR__ -Funktion gedruckt, gefolgt vom Wert der __Repr__ -Funktion.

Die Ausgabe, die als Ergebnis der Ausführung dieses Python -Skripts erzeugt wurde, ist im Bild unten gezeigt:

Da wir die Funktion __str__ in unserem Code nur definiert hatten, wurde ihr Wert korrekt gedruckt. Während wir für die Funktion __Repr__ die Adresse unserer erneut erhalten haben “haben wir erneut erhaltenMitarbeiterObjekt, da diese Funktion in unserem Code nicht definiert wurde.

Abschluss

In diesem Leitfaden haben wir Sie zum ersten Mal in die __STR__- und __Repr__ -Funktionen von Python vorgestellt. Um die Funktionsweise dieser Funktionen gut zu verstehen, haben wir Ihnen fünf verschiedene Beispiele mitgeteilt, in denen wir Ihnen gezeigt haben. Das Letzte, woran wir Sie erinnern möchten, ist, wenn Sie diese Funktionen mit einer Standardklasse verwenden, müssen Sie diese Funktionen nicht explizit definieren. Für die benutzerdefinierten Klassen ist es jedoch obligatorisch, diese Funktionen zu definieren.