Python-String-Interpolation

Python-String-Interpolation

String-Interpolation ist der Prozess des Ersetzens von Variablenwerten durch Platzhalter in einer Zeichenfolge. Schauen wir uns ein Beispiel an, um es besser zu verstehen. Angenommen, Sie möchten den Wert der Zeichenfolge jedes Mal ändern, wenn Sie die Zeichenfolge drucken, so wie Sie „Hallo willkommen bei Geeks für Geeks“ drucken möchten, wobei „der“ der Platzhalter für den Namen des Benutzers ist. Anstatt jedes Mal eine neue Zeichenfolge zu erstellen, wird die Zeichenfolge interpoliert Python kann Ihnen dabei helfen, den Platzhalter mit dem Namen des Benutzers dynamisch zu ändern.

PythonStringInterpolation-(1)

% – Formatierung

% – Formatierung ist eine von Python bereitgestellte Funktion, auf die mit einem %-Operator zugegriffen werden kann. Dies ähnelt der Funktion printf style in C.

Beispiel: Formatierungszeichenfolge mit dem %-Operator

Python3




n1> => 'Hello'> n2> => 'techcodeview.com'> # for single substitution> print> (> 'Welcome to % s'> %> n2)> # for single and multiple substitutions()> # mandatory> print> (> '% s ! This is % s.'> %> (n1, n2))>

Ausgabe

Welcome to techcodeview.com Hello ! This is techcodeview.com. 

Nehmen wir an, es ist nur eine komplizierte Version. Dennoch können wir es verwenden, wenn wir viele Variablen in der Zeichenfolge ersetzen müssen, da wir diese Darstellung nicht immer (Zeichenfolge + Variable + Zeichenfolge + Variable + Variable + Zeichenfolge) verwenden möchten. Zu diesem Zweck können wir also die %-Formatierung verwenden.

Notiz: Weitere Informationen zur %-Formatierung finden Sie unter String-Formatierung in Python mit %

Str.format()

str.format() funktioniert, indem es ein oder mehrere Ersatzfelder und Platzhalter, die durch ein Paar geschweifte Klammern { } definiert sind, in eine Zeichenfolge einfügt. Der Wert, den wir in die Platzhalter einfügen und mit der Zeichenfolge verketten möchten, die als Parameter an die Formatfunktion übergeben wurde.

Beispiel: Formatieren von Zeichenfolgen mit der Methode format().

Python3




n1> => 'Hello'> n2> => 'techcodeview.com'> # for single substitution> print> (> '{}, {}'> .> format> (n1, n2))>

Ausgabe

Hello, techcodeview.com 

Wir können den Variablennamen auch in den geschweiften Klammern {} verwenden. Dadurch können wir die Parameter von Formatfunktionen in jeder gewünschten Reihenfolge verwenden.

Beispiel: Formatieren Sie Funktionen mit Variablen in geschweiften Klammern.

Python3




n1> => 'Hello'> n2> => 'GeeksForGeeks'> # for single or multiple substitutions> # let's say b1 and b2 are formal parameters> # and n1 and n2 are actual parameters> print> (> '{b1}! This is {b2}.'> .> format> (b1> => n1, b2> => n2))> # we can also change the order of the> # variables in the string without changing> # the parameters of format function> print> (> '{b2}! This is {b1}.'> .> format> (b1> => n1, b2> => n2))>

Ausgabe

Hello! This is GeeksForGeeks. GeeksForGeeks! This is Hello. 

Notiz: Weitere Informationen zu str.format() finden Sie unter format()-Funktion in Python

F-Saiten

PEP 498 führte einen neuen String-Formatierungsmechanismus ein, der als Literal String Interpolation oder häufiger als bekannt ist F-Saiten (wegen des führenden f-Zeichens vor dem String-Literal). Die Idee hinter F-Strings besteht darin, die String-Interpolation zu vereinfachen.

Um einen F-String zu erstellen, stellen Sie dem String den Buchstaben f voran. Die Zeichenfolge selbst kann auf die gleiche Weise wie mit str formatiert werden. Format(). F-Strings bieten eine übersichtliche und praktische Möglichkeit, Python-Ausdrücke zur Formatierung in String-Literale einzubetten.

Beispiel: Formatieren von Strings mit F-Strings

Python3




n1> => 'Hello'> n2> => 'techcodeview.com'> # f tells Python to restore the value of two> # string variable name and program inside braces {}> print> (f> '{n1}! This is {n2}'> )>

Ausgabe

Hello! This is techcodeview.com (2 * 3)-10 = -4 

Wir können auch F-Strings verwenden, um einige arithmetische Operationen zu berechnen, und es führt die Inline-Arithmetik durch. Siehe das folgende Beispiel –

Beispiel: Inline-Arithmetik mit F-Strings

Python3




a> => 2> b> => 3> c> => 10> print> (f> '({a} * {b})-{c} = {(2 * 3)-10}'> )>

Ausgabe

(2 * 3)-10 = -4 

Notiz: Weitere Informationen zu F-Strings finden Sie unter F-Strings in Python

String-Vorlagenklasse

Im String-Modul können wir mit der Template-Klasse eine vereinfachte Syntax für die Ausgabespezifikation erstellen. Das Format verwendet Platzhalternamen, die durch $ mit gültigen Python-Bezeichnern (alphanumerische Zeichen und Unterstriche) gebildet werden. Wenn Sie den Platzhalter mit geschweiften Klammern umgeben, können ihm weitere alphanumerische Buchstaben ohne dazwischenliegende Leerzeichen folgen. Durch das Schreiben von $$ wird ein einzelnes maskiertes $ erstellt:

Beispiel: Formatierungszeichenfolge mithilfe der Vorlagenklasse

Python3




from> string> import> Template> n1> => 'Hello'> n2> => 'techcodeview.com'> # made a template which we used to> # pass two variable so n3 and n4> # formal and n1 and n2 actual> n> => Template(> '$n3 ! This is $n4.'> )> # and pass the parameters into the template string.> print> (n.substitute(n3> => n1, n4> => n2))>

Ausgabe

Hello ! This is techcodeview.com. 

Notiz: Weitere Informationen zur String Template-Klasse finden Sie unter String-Vorlagenklasse in Python