Ob es sich um eine Datenbankabfrage oder Ergebnisse mathematischer Operationen handelt, die Python-String-Format-Methode bietet eine dynamischere und ansprechendere Möglichkeit, einem Benutzer Ergebnisse zu präsentieren.
Schauen wir uns an, wie die Str.format() Funktion funktioniert in Python. Außerdem erfahren Sie, wie Sie dieses Format in Ihren eigenen Programmen verwenden können.
Wie funktioniert das Python-String-Format()?
Die Python Str.format() Mit dieser Funktion können Sie Ihre Ergebnisse an einer beliebigen Stelle in einer Zeichenfolge einfügen.
Es funktioniert, indem es Platz für Ihre Ergebnisse innerhalb der Zeichenfolge mit geschweiften Klammern zuweist. Es schreibt dann Ihre Ausgabe an diese Position mit dem Format() Methode.
Die Zeichenfolgen außerhalb der geschweiften Klammer sind sogenannte wörtliche Texte.
So verwenden Sie die Python String format() Methode
Die Str.format() Die Funktion akzeptiert einen Wert und einen optionalen Zeichenfolgenformatbezeichner.
So sieht die allgemeine Syntax aus:
str.format (Wert, format_spec)
Werfen wir nun einen Blick auf weitere praktische Beispiele für die Verwendung dieser Python-String-Methode.
1. Einen Wert an einer bestimmten Position einfügen
Hier ist ein einfaches Beispiel für das Einfügen eines Werts in eine Zeichenfolge mithilfe der Str.format() Methode:
Kosten = 45
formattedMethod = "Dieses Gut kostet nur {} Dollar"
drucken (formattedMethod.format (Kosten))
Output: Dieses Gut kostet nur 45 Dollar
Der obige Code ist der gleiche wie:
formattedMethod = "Dieses Gut kostet nur {} Dollar"
drucken (formattedMethod.format (45))
Output: Dieses Gut kostet nur 45 Dollar
2. Mehrere Ausgaben in einen String einfügen
Sie können auch mehrere Ergebnisse in eine Zeichenfolge einfügen. Hier ist wie:
y = 7*8
f = 5+5
g = 0
a = "Der Wert von y ist {}, während f {} ist. Niemand kann {}" sehen. Format (y, f, g)
drucken (a)
Ausgabe: Der Wert von y ist 56, während f 10 ist. Niemand kann 0 sehen
3. Verwenden Sie Escape-Klammern, um Ausgaben in dedizierte Klammern zu platzieren
Wenn Sie eines der Ergebnisse in eine geschweifte Klammer setzen müssen, ist das ganz einfach. Sie müssen nur zwei zusätzliche Fluchtklammern einführen.
Sag zum Beispiel, du willst ja in einer speziellen geschweiften Klammer:
a = "Der Wert von y ist {{{}}}, während f {} ist. Niemand kann {}" sehen. Format (y, f, g)
drucken (a)
Ausgabe: Der Wert von y ist {56}, während f 10 ist. Niemand kann 0 sehen
4. Ausgabewerte aus einer Liste
Sie können bestimmte Werte aus einer Liste auswählen und in eine Zeichenfolge einfügen:
meineListe = [10, 2, 4, 6]
print(("Der erste ist {} und der dritte ist {}").format (myList[0], myList[2]))
Ausgabe: Die erste ist 10 und die dritte ist 4
Um Wiederholungen innerhalb der .Format() Klammern können Sie stattdessen den Formatbezeichner so einstellen, dass er auf eine einzelne Variable zeigt.
So geht's:
meineListe = [10, 2, 4, 6]
print(("Die erste ist {yourList[0]} und die dritte ist {yourList[2]}").format (yourList = myList))
Ausgabe: Die erste ist 10 und die dritte ist 4
Das obige Beispiel gilt auch für andere Beispiele, die wir zuvor behandelt haben. Mit diesem Trick können Sie also mit ihnen herumspielen.
5. Werte aus einem Wörterbuch einfügen
Ähnlich wie im vorherigen Abschnitt können Sie die Str.format() Methode zum Einfügen eines Wörterbuchwerts in eine Zeichenfolge:
myDiction = {"Zehn":10, "Zwei":2, "Vier":4, "Sechs":6}
print(("Der erste ist {} und der dritte ist {}").format (myDiction["Ten"], myDiction["Four"]))
Ausgabe: Die erste ist 10 und die dritte ist 4
Verwandt: So konvertieren Sie eine Liste in ein Wörterbuch in Python
Und wenn Sie den Trick aus dem vorherigen Abschnitt anwenden möchten:
myDiction = {"Zehn":10, "Zwei":2, "Vier":4, "Sechs":6}
print(("Der erste ist {Zehn} und der dritte ist {Vier}").format(**myDiction))
Ausgabe: Die erste ist 10 und die dritte ist 4
Sie können den obigen Code auch schreiben als:
print(("Der erste ist {d[Ten]} und der dritte ist {d[Four]}").format (d=myDiction))
Ausgabe: Die erste ist 10 und die dritte ist 4
6. Die Ausgabe einer Funktion in einen String einfügen
Wenn Sie die Ausgabe einer Funktion in einem String anzeigen möchten:
def difNums (a, b):
wenn a > b:
zurück a - b
anders:
return return "Sie können {} mit dieser Funktion nicht von {} subtrahieren".format (a, b)
print(("Hallo: {}").format (difNums (2, 6)))
Ausgabe: Hallo zusammen: Du kannst mit dieser Funktion nicht 2 von 6 subtrahieren
Verwenden von Python-String-Formatbezeichnern
Mit dem Formatbezeichner können Sie auswählen, wie Ihr Format durchkommt. Wie bereits erwähnt, ist dies ein optionaler Parameter, der mitgeliefert wird Str.format().
Mit dieser Option können Sie Ihre Ausgabe ausrichten, lange Zeichenfolgen kürzen, Ausgaben gruppieren oder eine ganze Zahl auf eine bestimmte Anzahl signifikanter Ziffern runden und vieles mehr.
Sie werden die Formatbezeichner oft in die geschweiften Klammern schreiben. Sie können sie aber auch explizit innerhalb der. angeben .Format() Klammer.
Sehen wir uns einige seiner Anwendungsfälle an.
7. String-Ausgabe ausrichten
Sie können das größere (>) Zeichen, um eine Zeichenfolgenausgabe rechts auszurichten:
print("Hallo {:>15}".format (12734589))
Ausgabe: Hallo 12734589
Sie können Ihren Text auch zentriert ausrichten, wenn Sie möchten:
print("Hallo {:^15}".format (12734589))
Ausgabe: Hallo 12734589
Lassen Sie uns die obige Ausgabe weiter formatieren. Sie können beispielsweise Unterstriche einfügen, um die Auffüllung auf beiden Seiten Ihrer Zeichenfolgenausgabe anzuzeigen:
print("Hallo {:_^15}".format (12734589))
Ausgabe: Hallo ___12734589____
Aber wie bereits erwähnt, können Sie den Formatbezeichner explizit als Parameter innerhalb von. angeben Str.format().
Der vorherige Code sieht in diesem Fall also so aus:
print("Hallo {:{g}}".format (12734589, g = "_^15"))
Ausgabe: Hallo ___12734589____
Fühlen Sie sich frei, die anderen Beispiele mit der obigen Option umzuschreiben.
8. Formatieren von Ausgaben in eine bestimmte Anzahl von signifikanten Zahlen
Möglicherweise möchten Sie auch eine bestimmte Anzahl signifikanter Zahlen für eine Berechnung mit dem zurückgeben .Format() Methode.
Der folgende Beispielcode rundet beispielsweise das Ergebnis der mathematischen Operation auf eine signifikante Dezimalzahl:
kalkprofitPerc = ((45 - 20)/45)*100
formattedOutput = "Unser Gewinn beträgt {profit: .1f}%"
print (formattedOutput.format (profit = calcprofitPerc))
Output: Unser Gewinn beträgt 55,6%
9. Kürzen Sie lange Zeichenfolgen
Obwohl das Abschneiden eines Textes unpraktisch erscheinen mag, können Sie nicht sagen, wo Sie ihn benötigen könnten.
So schneiden Sie einen Teil Ihrer String-Ausgabe mit dem. ab Str.format() Funktion:
print(("Truncate this to the first 3 Alphabets: {:.3}").format("idowuomisola"))
Ausgabe: Kürze dies auf die ersten 3 Alphabete: ido
10. Trennen von Zahlengruppen anhand eines Kriteriums
Sie können eine Gruppe von Zahlen durch einen Unterstrich oder ein Komma trennen:
print("Getrennt durch Unterstrich: {:{g}}".format (12734589, g="_"))
print("Durch Komma getrennt: {:{g}}".format (12734589, g=","))
Ausgabe:
Durch Unterstrich getrennt: 12_734_589
Durch Komma getrennt: 12.734.589
Verwandt:So teilen Sie einen String in Python
Darüber hinaus können Sie die zu behandelnde Nummerngruppe mit ihrem Schlüssel angeben:
print("Erste Zahlen durch Unterstrich: {0:{g}}".format (12734589, 123674, 662772, g="_"))
print("Dritte Zahlen durch Komma: {2:{g}}".format (12734589, 123674, 662772, g=","))
Ausgabe:
Erste Zahlen durch Unterstrich: 12_734_589
Dritte Zahlen durch Komma: 662.772
Präsentieren Sie Ausgaben schön mit der Python String format() Methode
Eine Möglichkeit, Ihr Programm hervorzuheben, besteht darin, Ergebnisse und Abfragen zu präsentieren. Zweifellos bietet die Python-String-Format-Methode eine sauberere Möglichkeit, Ergebnisse auszugeben. Im Gegensatz zur vorherigen Modulo-Methode alter Python-Versionen ist das in Python 3 eingeführte neue String-Format lesbarer und benutzerfreundlicher.
Die Verwendung und Manipulation von Strings in Python kann schwierig erscheinen, ist aber täuschend einfach.
Weiter lesen
- Programmierung
- Programmierung
- Python
- Programmiersprachen
Idowu hat eine Leidenschaft für intelligente Technologien und Produktivität. In seiner Freizeit spielt er mit Programmieren und wechselt bei Langeweile aufs Schachbrett, aber er liebt es auch, ab und zu aus der Routine auszubrechen. Seine Leidenschaft, Menschen den Weg in die moderne Technik zu weisen, motiviert ihn, mehr zu schreiben.
Abonniere unseren Newsletter
Abonnieren Sie unseren Newsletter für technische Tipps, Rezensionen, kostenlose E-Books und exklusive Angebote!
Klicken Sie hier, um zu abonnieren