Python f-Strings
Mit Python f-Strings können Sie komplexe Ausdrücke und Variablen direkt in einen String einfügen, ohne zusätzliche Konvertierungen oder Formatierungen durchführen zu müssen.
Was genau sind Python f-Strings?
Python f-Strings sind ein Python-String-Format, das mit Python 3.6 eingeführt wurde. Sie werden auch als formatierte String-Literale bezeichnet. Innerhalb von f-Strings können Sie Berechnungen auswerten, indem Sie diese in geschweifte Klammern einbetten. f-Strings ermöglichen eine kompaktere Schreibweise im Vergleich zu anderen String-Formatierungsmethoden wie str.format()
oder der Konkatenation mit +
. Dies führt zu klarerem und prägnanterem Code.
f-Strings sind äußerst flexibel und erlauben es, Variablen und Ausdrücke in verschiedenen Datentypen wie Integer, Floats, Listen oder sogar Ausdrücke und Funktionen ohne vorherige Konvertierung oder spezielle Formatierungen einzufügen. In der Regel sind Python f-Strings schneller als andere String-Formatierungsmethoden in Python.
Die allgemeine Syntax von f-Strings
Die grundlegende Struktur eines f-Strings besteht aus dem Präfix f
oder F
, gefolgt von einem String, der durch Anführungszeichen (“ oder ’) gekennzeichnet ist. Innerhalb dieses Strings können geschweifte Klammern {}
verwendet werden, um Variablen oder Ausdrücke einzubetten.
name = "Peter"
age = 25
formatted_string = f"My name is {name} and I am {age} years old."
print(formatted_string) # Output: My name is Peter and I am 25 years old.
pythonIn unserem Beispiel ersetzen wir die Variable name
mit {name}
und die Variable age
mit {age}
in dem f-String, um die finale Zeichenkette zu erzeugen.
- Flexibel: Hosting, das jedem Website-Traffic standhält
- Verlässlich: Inklusive 24/7-Support und persönlicher Beratung
- Sicher: Kostenloses SSL-Zertifikat, DDoS-Schutz und Backups
Einsatzmöglichkeiten von Python f-Strings
f-Strings können Sie vielseitig einsetzen und spezifizieren.
Berechnungen innerhalb eines Strings ausführen
Python f-Strings sind besonders praktisch, wenn Sie arithmetische Operationen innerhalb eines Strings auswerten möchten. So können Sie einen komplexen Ausdruck in einer Zeile definieren.
num1 = 10
num2 = 5
result = f"The sum of {num1} and {num2} is {num1 + num2}"
print(result) # Output: The sum of 10 and 5 is 15
pythonHier wird die Addition von num1
und num2
innerhalb des f-Strings durchgeführt, und das Ergebnis wird direkt in den finalen String eingefügt.
Python f-Strings und Raw Strings
Die Kombination von r
(für Raw Strings) und f
(für formatierte Strings oder f-Strings) erzeugt eine spezielle Art von String in Python, die als rf-String bekannt ist. Der rf-String verbindet die Funktionalität von Raw Strings, die Escape-Sequenzen wörtlich interpretieren, mit der Flexibilität und Leistungsfähigkeit von f-Strings, die die direkte Einbettung von Variablen und Ausdrücken in einen String erlauben.
name = "User"
path = rf'C:\Users\Username\Documents\{name}\file.txt'
print(path) # Output: C:\Users\Username\Documents\User\file.txt
pythonIm Code benutzen wir den rf-String, um einen Pfad zu definieren. Die Verwendung von {name}
innerhalb des rf-Strings führt zur direkten Einfügung der Variablen name
, während das r
vor dem String sicherstellt, dass der Backslash \
als wörtliches Zeichen behandelt wird und nicht als Teil einer Escape-Sequenz.
Präzision von Gleitkommazahlen
Mit speziellen Formatierungsanweisungen können Sie die Anzahl der Dezimalstellen einer Gleitkommazahl im formatierten String festlegen.
value = 3.14159265359
formatted_value = f"Rounded value = {value:.3f}"
print(formatted_value) # Output: Rounded value = 3.142
pythonHier gibt die Formatierungsanweisung :.3f
an, dass die Variable value
auf drei Dezimalstellen gerundet und in den formatierten String eingefügt werden soll.
Breite und Ausrichtung
Bei Python f-Strings ermöglicht die Breite und Ausrichtung die Kontrolle über die Darstellung der eingesetzten Werte innerhalb eines festgelegten Feldes. Dies ist hilfreich, um Text oder Zahlen in einem bestimmten Bereich zu platzieren und sie entweder links, rechts oder zentriert auszurichten.
Angenommen, wir haben den Namen __Alice__
und möchten ihn in einem zehn Zeichen breiten Feld rechtsbündig platzieren:
name = "Alice"
formatted_name = f"Hello, {name:>10}"
print(formatted_name) # Output: Hello, Alice
pythonDa der Wert weniger als zehn Zeichen lang ist, wird er durch die Spezifizierung {name:>10}
rechtsbündig ausgerichtet.
Füllen mit Nullen oder anderen Zeichen
Das Füllen mit Nullen oder anderen Zeichen beeinflusst die Ausrichtung von Zahlen in einem Feld. Dies nützt Ihnen, wenn Zahlen in einem festen Format dargestellt werden sollen, zum Beispiel bei der Anzeige von Zeitangaben oder numerischen Werten.
number = 42
formatted_number = f"Number: {number:06}"
print(formatted_number) # Output: Number: 000042
pythonHierbei bezeichnet :06
, dass die Zahl number
in ein sechsstelliges Feld eingetragen wird, wobei wir die fehlenden Stellen mit führenden Nullen auffüllen.
Es können auch andere Zeichen als Nullen zum Auffüllen spezifiziert werden:
word = "Python"
formatted_word = f"Word: {word:_<10}"
print(formatted_word) # Output: Word: Python____
python