Python String format() Erklären Sie mit BEISPIELEN
Was bedeutet Python String-Format()?
Python Stringformat() ist eine Funktion, die verwendet wird, um die Zeichenfolge durch Platzhalter mit gültigen Werten in der endgültigen Zeichenfolge zu ersetzen, zu substituieren oder zu konvertieren. Es handelt sich um eine integrierte Funktion von Python String-Klasse, die den formatierten String als Ausgabe zurückgibt. Die Platzhalter innerhalb des Strings werden in geschweiften Klammern definiert.
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 geschweiften Klammern {} enthält. 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 die in geschweiften Klammern angegebenen Platzhalter durch gültige Werte ersetzt werden.
Platzhalter
Die Platzhalter in der Vorlagenzeichenfolge werden durch geschweifte Klammern dargestellt, z. B. {}. Der Platzhalter kann leer sein {}, oder er kann eine Variable enthalten, z. B. {name}, oder er kann einen Zahlenindex haben, z. B. {0}, {1} usw.
Wie funktioniert string format()?
Die Python Stringformat() Die Methode durchsucht die Originalzeichenfolgen nach Platzhaltern. Die Platzhalter können leere geschweifte Klammern ({}) oder Positionsargumente sein, d. h. die Zeichenfolge kann Platzhalter mit Index 0, 1 (z. B. {0}, {1} usw.) enthalten.
Bei Schlüsselwortargumenten steht der Variablenname innerhalb der geschweiften Klammern, z. B. {name}, {age}. Bei leeren geschweiften Klammern werden die Werte aus dem Format der Reihe nach innerhalb der geschweiften Klammern ersetzt.
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 hat die Zeichenfolge leere geschweifte Klammern ({}). Der dem Format zugewiesene Wert wird innerhalb der geschweiften Klammern ({}) ersetzt.
Der Wert, den wir ersetzen möchten, ist eine Zeichenfolge.
Beispiel:
Verwenden der Zeichenfolgenformatierung in Python, wir möchten, dass die geschweiften Klammern ({}) durch einen Zeichenfolgenwert ersetzt werden. Der Wert wird an format(„Guru99“) übergeben. Bei der Ausführung werden die geschweiften Klammern {} durch Guru99 ersetzt und Sie erhalten die endgültige 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 geschweiften Klammern ({}) werden an der Stelle hinzugefügt, an der Sie den numerischen Wert benötigen. Bei der Ausführung werden die leeren geschweiften Klammern ({}) durch den numerischen Wert ersetzt.
Beispiel:
Sie können auch format() verwenden, um Zahlen in Ihren String einzufügen. Das Beispiel zeigt, wie Sie den leeren Platzhalter {} in format() durch die Zahl 99 ersetzen.
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 der geschweiften Klammern zu verwenden, wie im folgenden Beispiel gezeigt. Die Variablen werden innerhalb von format() definiert. Daher wird bei der Ausführung der der Variablen zugewiesene Wert innerhalb der ursprünglichen Zeichenfolge ersetzt.
Beispiel:
Sie können Variablen in geschweiften Klammern verwenden, z. B. {name} {num}. Die Werte für die Variablen name und num sind im Format verfügbar, d. h. format(name=”Guru”, num=”99″). Die für name und num angegebenen Werte werden in {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, Placeholder leer zu haben, mit einer Variable oder einem Index. Es ist auch möglich, dass Sie anwenden können Python Zeichenfolgenformatierung innerhalb des Platzhalters.
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: Ausgabe mit bis zu 2 Dezimalstellen wird angezeigt.
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.
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.
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.
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.
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.
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.
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.
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.
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 des Formats 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 mit format() ein Leerzeichen innerhalb des Platzhalters hinzugefügt. Um Leerzeichen hinzuzufügen, müssen Sie die Anzahl der Leerzeichen in geschweiften Klammern nach dem Doppelpunkt (:) angeben. Der Platzhalter sieht also wie {:5} aus.
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
- Python Die String-Klasse bietet uns einen wichtigen integrierten Befehl namens „format()“, der uns hilft, den String mit Platzhaltern durch gültige Werte im endgültigen String zu ersetzen oder zu konvertieren.
- Die Platzhalter im Stringmodul Python werden in geschweiften Klammern definiert, z. B. „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 String-Formatierung nutzen in Python Platzhalter innerhalb dieser Reihe können dabei helfen, Abstand hinzuzufügen, den Text zu zentrieren und auch bei der Zahlenformatierung zu helfen.