Cloud-Lösungen der Zukunft - Testen!
Revolutionäre Cloud-Technologie, ganz ohne versteckte Kosten. Profitieren Sie von unserer Testphase und entdecken Sie umfassende Funktionen. Der Anmeldeprozess ist transparent und unkompliziert. Starten Sie jetzt Ihre Reise in die Cloud - Kostenfrei!
Python f-strings – Effizientes Formatieren
Python f-strings oder formatierte Zeichenketten sind die neue Art, Zeichenketten zu formatieren. Diese Funktion wurde in Python 3.6 unter PEP-498 eingeführt. Sie wird auch als literale Zeichenketteninterpolation bezeichnet.
Warum benötigen wir f-strings?
Python bietet verschiedene Möglichkeiten, eine Zeichenkette zu formatieren. Lassen Sie uns diese schnell betrachten und welche Probleme sie haben.
- %-Formatierung – großartig für einfache Formatierungen, aber begrenzte Unterstützung nur für Zeichenketten, Integers und Doubles. Wir können sie nicht mit Objekten verwenden.
- Template Strings – sehr grundlegend. Template Strings funktionieren nur mit Schlüsselwortargumenten wie Wörterbüchern. Es ist nicht erlaubt, Funktionen aufzurufen, und Argumente müssen Zeichenketten sein.
- String format() – Die Python String format()-Funktion wurde eingeführt, um die Probleme und begrenzten Funktionen der %-Formatierung und Template Strings zu überwinden. Sie ist jedoch zu umständlich. Lassen Sie uns ihre Umständlichkeit an einem einfachen Beispiel betrachten.
>>> age = 4 * 10
>>> 'My age is {age}.'.format(age=age)
'My age is 40.'
Python f-strings funktionieren fast ähnlich wie die format()-Funktion, entfernen jedoch alle Umständlichkeiten, die die format()-Funktion hat. Lassen Sie uns sehen, wie einfach wir die oben genannte Zeichenkette mit f-strings formatieren können.
>>> f'My age is {age}'
'My age is 40.'
Beispiele für Python f-strings
Lassen Sie uns ein einfaches Beispiel für f-strings betrachten.
name = 'Pankaj'
age = 34
f_string = f'My Name is {name} and my age is {age}'
print(f_string)
print(F'My Name is {name} and my age is {age}') # f and F are same
name = 'David'
age = 40
# f_string is already evaluated and won't change now
print(f_string)
Output:
My Name is Pankaj and my age is 34
My Name is Pankaj and my age is 34
My Name is Pankaj and my age is 34
Python führt Anweisungen nacheinander aus, und sobald f-string-Ausdrücke ausgewertet sind, ändern sie sich nicht, auch wenn sich der Wert des Ausdrucks ändert. Deshalb bleibt im obigen Code der Wert von f_string gleich, auch nachdem die Variablen ’name‘ und ‚age‘ im späteren Teil des Programms geändert wurden.
1. f-strings mit Ausdrücken und Konvertierungen
Wir können f-strings verwenden, um Datumsangaben in ein bestimmtes Format zu konvertieren. Wir können auch mathematische Ausdrücke in f-strings ausführen.
from datetime import datetime
name = 'David'
age = 40
d = datetime.now()
print(f'Age after five years will be {age+5}') # age = 40
print(f'Name with quotes = {name!r}') # name = David
print(f'Default Formatted Date = {d}')
print(f'Custom Formatted Date = {d:%m/%d/%Y}')
Output:
Age after five years will be 45
Name with quotes = 'David'
Default Formatted Date = 2018-10-10 11:47:12.818831
Custom Formatted Date = 10/10/2018
2. f-strings unterstützen rohe Zeichenketten
Wir können auch rohe Zeichenketten mit f-strings erstellen.
print(f'Default Formatted Date:\n{d}')
print(fr'Default Formatted Date:\n {d}')
Output:
Default Formatted Date:
2018-10-10 11:47:12.818831
Default Formatted Date:\n 2018-10-10 11:47:12.818831
3. f-strings mit Objekten und Attributen
Wir können auch auf Objektattribute in f-strings zugreifen.
class Employee:
id = 0
name = ''
def __init__(self, i, n):
self.id = i
self.name = n
def __str__(self):
return f'E[id={self.id}, name={self.name}]'
emp = Employee(10, 'Pankaj')
print(emp)
print(f'Employee: {emp}\nName is {emp.name} and id is {emp.id}')
Output:
E[id=10, name=Pankaj]
Employee: E[id=10, name=Pankaj]
Name is Pankaj and id is 10
4. f-strings rufen Funktionen auf
Wir können in der f-strings-Formatierung auch Funktionen aufrufen.
def add(x, y):
return x + y
print(f'Sum(10,20) = {add(10, 20)}')
Output:
Sum(10,20) = 30
5. f-string mit Leerzeichen
Wenn im Ausdruck führende oder abschließende Leerzeichen vorhanden sind, werden sie ignoriert. Wenn der wörtliche Teil der Zeichenkette Leerzeichen enthält, werden diese beibehalten.
>>> age = 4 * 20
>>> f' Age = { age } '
' Age = 80 '
6. Lambda-Ausdrücke mit f-strings
Wir können auch Lambda-Ausdrücke in f-string-Ausdrücken verwenden.
x = -20.45
print(f'Lambda Example: {(lambda x: abs(x)) (x)}')
print(f'Lambda Square Example: {(lambda x: pow(x, 2)) (5)}')
Output:
Lambda Example: 20.45
Lambda Square Example: 25
7. Verschiedene Beispiele für f-strings
Lassen Sie uns einige verschiedene Beispiele für Python f-strings betrachten.
print(f'{"quoted string"}')
print(f'{{ {4*10} }}')
print(f'{{{4*10}}}')
Output:
quoted string
{ 40 }
{40}
Zusammenfassung
Das war’s zu formatierten Zeichenketten, auch bekannt als f-strings, in Python. Python f-strings – Effizientes Formatieren
Kostenlosen Account erstellen
Registrieren Sie sich jetzt und erhalten Sie exklusiven Zugang zu weiterführenden Ressourcen, individuellem Support und einer Community von Experten.
Aktuelle Beiträge
Starten Sie Ihre Cloud-Reise mit unserer kostenlosen Trial-Version!
Entdecken Sie die grenzenlosen Möglichkeiten unserer Cloud-Dienste ganz unverbindlich. Melden Sie sich jetzt für unsere kostenlose Trial-Version an und erleben Sie, wie unsere innovativen Lösungen Ihr Business transformieren können.