Python String format() Erklären Sie es anhand von BEISPIELEN

Was ist das Python-String-Format()?

Python-Stringformat() ist eine Funktion, die zum Ersetzen, Ersetzen oder Konvertieren der Zeichenfolge durch Platzhalter mit gültigen Werten in der endgültigen Zeichenfolge verwendet wird. Es handelt sich um eine integrierte Funktion der Python-String-Klasse, die den formatierten String als Ausgabe zurückgibt. Die Platzhalter innerhalb der Zeichenfolge werden in geschweifter Form definiert brackets.

Zum Beispiel „Willkommen bei Guru99 {}“.format('Wert hier').

Syntax der Funktion format() in Python

templatestring.format(val1, val2...)

Parameter

val1, val2 … : Die Werte, die in der angegebenen Vorlagenzeichenfolge ersetzt werden müssen, die Platzhalter in Form von Locken enthält brackets {}. Die Platzhalter können eine Zeichenfolge, ein Schlüssel/Wert-Paar, Ganzzahlen, Gleitkommazahlen, Zeichen usw. sein.

Rückgabewert

Es wird die endgültige Zeichenfolge zurückgegeben, wobei gültige Werte anstelle der in curly angegebenen Platzhalter ersetzt werden brackets.

Platzhalter

Die Platzhalter in der Vorlagenzeichenfolge werden mit „Curly“ dargestellt brackets, z.B {}. Der Platzhalter kann leer sein {}, oder er kann eine Variable für z. B. {name} oder einen Zahlenindex haben, z. B. {0}, {1} usw.

Wie funktioniert string format()?

Der Python-Stringformat() Die Methode durchsucht die Originalzeichenfolgen nach Platzhaltern. Die Platzhalter können leer sein, geschweift brackets ({}), Positionsargumente, d. h. die Zeichenfolge kann Platzhalter mit Index 0, 1 für z. B. {0}, {1} usw. haben.

Bei Schlüsselwortargumenten wird der Variablenname innerhalb der geschweiften Zeichenfolge angezeigt brackets zum Beispiel {Name}, {Alter}. Im Falle einer leeren Locke brackets, werden die Werte aus dem Format innerhalb der geschweiften Zeile ersetzt brackets der Reihe nach.

Der erste Wert wird durch die erste leere geschweifte Klammer ersetzt, gefolgt von der nächsten. Bei Positionsargumenten beginnt der Index bei 0 und so weiter. Die Werte stehen im durch Kommas getrennten Format und der 0 zur Verfügungth value zeigt auf den ersten Wert innerhalb des Formats und so weiter.

Bei Schlüsselwortargumenten, also wenn Sie eine Variable in Ihren Platzhaltern verwenden, können Sie die Reihenfolge der Werte innerhalb des Formats nach Bedarf festlegen.

Die Reihenfolge spielt hier keine Rolle, da die Werte basierend auf dem im format() vorhandenen Variablennamen ersetzt werden. Hier sind einige Beispiele für die Verwendung von Platzhaltern innerhalb einer Zeichenfolge als leere, positionelle Platzhalter sowie für die Verwendung von Schlüsselwörtern oder Variablen.

Beispiel: Leerer Platzhalter durch einen Zeichenfolgenwert ersetzt

Im folgenden Beispiel ist in der Zeichenfolge „Curly“ leer brackets({}). Der dem Format zugewiesene Wert wird innerhalb der geschweiften Zeile ersetzt brackets({}).

Der Wert, den wir ersetzen möchten, ist eine Zeichenfolge.

Beispiel:

Mit der String-Formatierung in Python wollen wir die geschweifte Form brackets ({}) soll durch einen Zeichenfolgenwert ersetzt werden. Der Wert wird an format(„Guru99“) übergeben. Bei der Ausführung die lockige brackets {} wird durch Guru99 ersetzt und Sie erhalten die letzte Zeichenfolge als Willkommen bei den Guru99-Tutorials.

print ("Welcome to {} tutorials".format("Guru99"))

Ausgang:

Welcome to Guru99 tutorials

Beispiel: Leerer Platzhalter durch einen numerischen Wert ersetzt

Im folgenden Beispiel möchten wir, dass der numerische Wert innerhalb der ursprünglichen Zeichenfolge ersetzt wird. Die Lockige brackets({}) werden an der Stelle hinzugefügt, an der Sie den numerischen Wert benötigen. Wenn es ausgeführt wird, wird das leere Curly brackets ({}) wird durch den numerischen Wert ersetzt.

Beispiel:

Sie können format() auch verwenden, um Zahlen in Ihren String einzufügen. Das Beispiel zeigt, wie der leere Platzhalter {} durch die Nummer 99 in format() ersetzt wird.

print ("Welcome to Guru{} Tutorials".format("99"))

Ausgang:

Welcome to Guru99 Tutorials

Beispiel: Verwendung von Variablen- oder Schlüsselwortargumenten innerhalb des Platzhalters

Es ist auch möglich, Variablen innerhalb des Curlys zu verwenden brackets, wie im Beispiel unten gezeigt. Die Variablen werden in format() definiert. Daher wird bei der Ausführung der der Variablen zugewiesene Wert innerhalb der ursprünglichen Zeichenfolge ersetzt.

Beispiel:

Sie können Variablen innerhalb von Curly verwenden brackets zum Beispiel {name} {num}. Die Werte für name und num-Variable sind im Format verfügbar, z. B. format(name=“Guru“, num=“99″). Die für name und num angegebenen Werte werden innerhalb von {name} und {num} ersetzt.

print ("Welcome to {name}{num} Tutorials".format(name="Guru", num="99"))

Ausgang:

Welcome to Guru99 Tutorials

Beispiel: Verwendung von Index- oder Positionsargumenten innerhalb des Platzhalters

Die Werte können durch Indizes wie 0, 1, 2 innerhalb der Platzhalter ersetzt werden. Der Wert wird der Reihe nach aus format() ausgewählt, wie im folgenden Beispiel gezeigt.

Beispiel:

print ("Welcome to {0}{1} Tutorials".format("Guru","99"))

Ausgang:

Welcome to Guru99 Tutorials

Beispiel: Verwendung mehrerer Platzhalter innerhalb einer Zeichenfolge

In diesem Beispiel werden wir mehrere leere Platzhalter verwenden.

Beispiel:

Die im Beispiel verwendete Zeichenfolge enthält mehrere leere Platzhalter und jeder Platzhalter verweist auf einen Wert innerhalb von format(). Der erste Wert wird durch den ersten Platzhalter ersetzt und so weiter.

print ("{} is {} new kind of {} experience!".format("Guru99", "totally","learning"))

Ausgang:

Guru99 is totally new kind of learning experience!

Formatierung innerhalb von Platzhaltern

Sie haben gesehen, dass es möglich ist, Platzhalter leer, mit einer Variablen oder einem Index zu haben. Es ist auch möglich, dass Sie die Python-Zeichenfolgenformatierung innerhalb des Platzhalters anwenden.

Hier ist die Liste der Formate

Format Beschreibung Beispiel
:d Bei Verwendung innerhalb des Platzhalters erfolgt die Ausgabe im Dezimalformat print("The binary to decimal value is : {:d}".format(0b0011))

Ausgang:

The binary to decimal value is  : 3
:b Bei Verwendung innerhalb des Platzhalters wird die Ausgabe im Binärformat ausgegeben print("The binary value is : {:b}".format(500))

Ausgang:

The binary value is : 111110100
:e Bei Verwendung innerhalb des Platzhalters erfolgt die Ausgabe im wissenschaftlichen Format. Der Exponent e in der Ausgabe wird in Kleinbuchstaben geschrieben. print("The scientific value is : {:e}".format(40))

Ausgang:

The scientific format value is : 4.000000e+01
:E Bei Verwendung innerhalb des Platzhalters erfolgt die Ausgabe im wissenschaftlichen Format. Der Exponent E in der Ausgabe wird in Großbuchstaben geschrieben print("The scientific value is : {:E}".format(40))

Ausgang:

The scientific value is : 4.000000E+01
:f Dadurch wird ein Festkommazahlenformat ausgegeben. Standardmäßig erhalten Sie die Ausgabe einer beliebigen Zahl mit sechs Nachkommastellen. Wenn Sie bis zu 2 Dezimalstellen benötigen, verwenden Sie es als. 2f dh. ein Punkt (.) vor 2f print("The value is : {:f}".format(40))

Ausgang:

The value is  : 40.000000

Beispiel: Showing Ausgabe bis zu 2 Dezimalstellen.

print("The value is : {:.2f}".format(40))

Ausgang:

The value is: 40.00
:o Dadurch wird das Oktalformat ausgegeben print("The value is : {:o}".format(500))

Ausgang:

The value is  : 764
:x Dadurch wird das Hex-Format in Kleinbuchstaben ausgegeben print("The value is : {:x}".format(500))

Ausgang:

The value is  : 1f4
:X Dadurch wird das Hex-Format in Großbuchstaben ausgegeben. print("The value is : {:X}".format(500))

Ausgang:

The value is  : 1F4
:n Dadurch wird das Zahlenformat ausgegeben. print("The value is : {:n}".format(500.00))

Ausgang:

The value is  : 500
:% Dadurch wird die Ausgabe im Prozentformat ausgegeben.
Standardmäßig gibt es 6 Dezimalstellen für die Prozentausgabe. Falls Sie keinen Dezimalwert wünschen, können Sie einen Punkt mit 0 verwenden, z. B. (:.0 %).
print("The value is : {:%}".format(0.80))

Ausgang:

The value is  : 80.000000%

Dieses Beispiel zeigt, wie Sie die Dezimalstellen überspringen, indem Sie {:.0%} im Platzhalter verwenden.

print("The value is : {:.0%}".format(0.80))
Ausgang:

The value is: 80%
:_ Dadurch wird ein Unterstrich als Tausendertrennzeichen ausgegeben. Es ist ab Python 3.6 verfügbar. print("The value is {:_}".format(1000000))

Ausgang:

The value is  : 1_000_000
:, Dadurch wird das Komma als Tausendertrennzeichen ausgegeben print("The value is : {:,}".format(1000000))

Ausgang:

The value is  : 1,000,000

Das Komma (,) wird als Tausendertrennzeichen hinzugefügt, wie in der Ausgabe gezeigt.

: Dadurch wird vor allen positiven Zahlen ein Leerzeichen eingefügt Dieses Beispiel zeigt, wie man vor der angegebenen Zahl Leerzeichen oder Auffüllungen einfügt. Die Zahl 5 gibt die gewünschte Anzahl an Leerzeichen vor der Zahl an.

print("The value is: {:5}".format(40))

Ausgang:

The value is:    40
:- Dadurch wird vor negativen Zahlen ein Minuszeichen eingefügt Das Beispiel zeigt, wie man mit {:-} die Ausgabe mit einem Minuszeichen (-) vor der Zahl erhält.

print("The value is: {:-}".format(-40))

Ausgang:

The value is: -40
:+ Sie können ein Pluszeichen verwenden, um anzugeben, dass die Zahl positiv ist Das Beispiel zeigt, wie man mit {:+} die Ausgabe mit einem Pluszeichen (+) vor der Zahl erhält.

print("The value is: {:+}".format(40))

Ausgang:

The value is: +40
:= Das Gleichheitszeichen wird verwendet, um das +/- Zeichen auf der linken Seite zu platzieren. Das Beispiel zeigt, wie man mit {:=} die Ausgabe mit einem Pluszeichen (+/-) vor dem Gleichheitszeichen erhält.

print("The value is {:=}".format(-40))

Ausgang:

The value is -40
:^ Dadurch wird das Endergebnis zentriert ausgerichtet Das Beispiel zeigt die Verwendung von {:^}, um den Text zentriert auszurichten. Die Zahl 10 wird verwendet, um 10 Leerzeichen hinzuzufügen, um die zentrierte Ausrichtung anzuzeigen, wenn der Wert ersetzt wird.

print("The value {:^10} is positive value".format(40))

Ausgang:

The value     40     is a positive value

Hier können Sie 10 verwenden, um dem endgültigen Text 10 Leerzeichen hinzuzufügen, und der zu ersetzende Wert wird mittig zwischen den 10 Leerzeichen ausgerichtet. Die Leerzeichen von 10 werden nur hinzugefügt, um die zentrierte Ausrichtung des ersetzten Werts anzuzeigen.

:> Dadurch wird das Endergebnis rechtsbündig ausgerichtet Das Leerzeichen von 10 wird mit (:>10) hinzugefügt und der ersetzte Wert wird rechtsbündig ausgerichtet.

print("The value {:>10} is positive value".format(40))

Ausgang:

The value         40 is positive value
:< Dadurch wird das Endergebnis linksbündig ausgerichtet Das Leerzeichen von 10 wird mit (:<10) hinzugefügt und der ersetzte Wert wird linksbündig ausgerichtet.

print("The value {:<10} is positive value".format(40))

Ausgang:

The value 40         is positive value

Klasse mit format() verwenden

In diesem Beispiel erstellen wir eine Klasse und verwenden das Objekt der Klasse innerhalb der .format-Python-Methode. Die Platzhalter verweisen auf Klasseneigenschaften oder Mitglieder, die das Klassenobjekt verwenden.

Beispiel:

Die Klasse wird innerhalb des Formats (c=MyClass()) aufgerufen. Das Objekt c hat den Verweis auf die Eigenschaften und Methoden innerhalb der Klasse MyClass().

class MyClass:
    msg1="Guru"
    msg2="Tutorials"   

print("Welcome to {c.msg1}99 {c.msg2}!".format(c=MyClass()))

Ausgang:

Welcome to Guru99 Tutorials!

Wörterbuch mit format() verwenden

Es ist auch möglich, das Wörterbuch innerhalb von format() zu verwenden, wie im folgenden Beispiel gezeigt:

my_dict = {'msg1': "Welcome", 'msg2': 'Guru99'}
print("{m[msg1]} to {m[msg2]} Tutorials!".format(m=my_dict))

Ausgang:

Welcome to Guru99 Tutorials!

Auffüllen von Variablenersetzungen

Mit der Methode string.format() können Sie Auffüllungen und Leerzeichen hinzufügen, indem Sie Platzhalter in Ihrer Zeichenfolge verwenden.

Beispiel:

Im folgenden Beispiel wird mithilfe von format() Platz im Platzhalter hinzugefügt. Um Leerzeichen hinzuzufügen, müssen Sie die Anzahl der Leerzeichen innerhalb von „Curly“ angeben brackets nach dem Doppelpunkt (:). Der Platzhalter sieht also wie folgt aus: {:5}.

print("I have {:5} dogs and {:5} cat".format(2,1))

Ausgang:

I have     2 dogs and     1 cat

Sie können den Index auch innerhalb des Platzhalters angeben, zum Beispiel: {0:5}, wobei 0 sich auf den ersten Wert im Format bezieht.

print("I have {0:5} dogs and {1:5} cat".format(2,1))

Ausgang:

I have     2 dogs and     1 cat

Zusammenfassung

  • Die Python-String-Klasse bietet uns einen wichtigen integrierten Befehl namens format(), der uns hilft, den String durch Platzhalter mit gültigen Werten im endgültigen String zu ersetzen, zu ersetzen oder zu konvertieren.
  • Die Platzhalter innerhalb des String-Moduls Python werden in Curly definiert brackets, zB „Willkommen bei Guru99 {}“.format('Wert hier').
  • Der Platzhalter kann leer sein {}, oder er kann eine Variable für z. B. {name} oder einen Zahlenindex haben, z. B. {0}, {1} usw.
  • Sie können die Zeichenfolgenformatierung in Python in Platzhaltern verwenden, um Auffüllungen hinzuzufügen, die Mitte auszurichten und auch bei der Zahlenformatierung zu helfen.