Heim >Backend-Entwicklung >Python-Tutorial >String-Formatierung % vs. Format, was ist besser?
Es gibt zwei Möglichkeiten, Zeichenfolgen in Python zu formatieren: die Prozentzeichenmethode und die Formatierungsmethode
Die Prozentzeichenmethode ist relativ alt, während die Formatierungsmethode eine fortgeschrittenere Methode ist und die alte Methode ersetzen soll , derzeit existieren beide nebeneinander.
Prozentmodus
%[(name)][flags][width].[precision]typecode
(name) Optional, wird zur Auswahl des angegebenen Schlüssels verwendet
Flags Optional, Verfügbare Werte sind:
+ Rechtsbündig; positiven Zahlen geht ein Minuszeichen voran;
- Linksbündig; , negative Zahlen Vorzeichen einfügen
Rechtsbündig; vor positiven Zahlen ein Minuszeichen hinzufügen
0 Rechtsbündig; Zahlen, fügen Sie vor negativen Zahlen ein Minuszeichen hinzu; verwenden Sie 0, um die Leerstelle zu füllen 🎜>Typcode erforderlich
s, Rufen Sie den Rückgabewert der __str__-Methode des eingehenden Objekts ab und formatieren Sie ihn an der angegebenen Position
r, Rufen Sie den Rückgabewert der __repr__-Methode des eingehenden Objekts ab Objekt und formatieren Sie es an der angegebenen Stelle
c, Ganzzahl: Konvertieren Sie die Zahl in den entsprechenden Unicode-Wert, der Dezimalbereich ist 0 1c75c1e118b0c75573d4f0017cc0a09a, der Inhalt ist rechtsbündig (Standard)
=, der Inhalt ist rechtsbündig, das Symbol wird links platziert des Füllzeichens und sind nur für numerische Typen gültig. Auch wenn: Symbol + Füller + Zahl
^, der Inhalt ist zentriert
Zeichen [Optional] Es gibt vorzeichenlose Zahlen
+, positives Vorzeichen plus positiv, negatives Vorzeichen plus negativ ;
-, das positive Vorzeichen bleibt unverändert, das negative Vorzeichen wird zum negativen
Leerzeichen hinzugefügt, das positive Vorzeichen ist ein Leerzeichen, das negative Vorzeichen wird zum negativen hinzugefügt;
#Breite> Breite [Optional] Die Breite der Formatierungsbits .precision [Optional] Präzision bei der Beibehaltung von Dezimalstellen Typ [Optional] Formatierungstyp Eingabe „ Zeichenparameter des Zeichenfolgentyps „s, formatierte Zeichenfolgentypdaten sind leer. Wenn der Typ nicht angegeben ist, ist der Standardwert „Keine“, genau wie s im „Ganzzahltyp“ übergeben Der Parameter b wandelt die dezimale Ganzzahl automatisch in eine Binärdarstellung um und formatiert dann c, wandelt die dezimale Ganzzahl automatisch in das entsprechende Unicode-Zeichen um
d, dezimale Ganzzahl o, dezimale Ganzzahl automatisch in oktale Darstellung umwandeln und dann formatieren x, dezimale Ganzzahl automatisch in hexadezimale Darstellung umwandeln Dann formatieren (Kleinbuchstabe x) X, konvertiert die dezimale Ganzzahl automatisch in eine hexadezimale Darstellung und formatiert sie dann (Großbuchstaben). Der Parameter von e wird in wissenschaftliche Notation (Kleinbuchstabe e) konvertiert und dann formatiert; E, wird in die wissenschaftliche Schreibweise (Großbuchstabe E) konvertiert und dann formatiert; F, in Gleitkomma umgewandelt (Standard 6 Nachkommastellen), dann formatiert; g, automatisch zwischen e und f umschalten G, automatisch zwischen E und F umschalten
%, Anzeigeprozentsatz (Standardanzeige ist 6 Nachkommastellen)
tpl = "i am {}, age {}, {}".format("seven", 18, 'alex') tpl = "i am {}, age {}, {}".format(*["seven", 18, 'alex']) tpl = "i am {0}, age {1}, really {0}".format("seven", 18) tpl = "i am {0}, age {1}, really {0}".format(*["seven", 18]) tpl = "i am {name}, age {age}, really {name}".format(name="seven", age=18) tpl = "i am {name}, age {age}, really {name}".format(**{"name": "seven", "age": 18}) tpl = "i am {0[0]}, age {0[1]}, really {0[2]}".format([1, 2, 3], [11, 22, 33]) tpl = "i am {:s}, age {:d}, money {:f}".format("seven", 18, 88888.1) tpl = "i am {:s}, age {:d}".format(*["seven", 18]) tpl = "i am {name:s}, age {age:d}".format(name="seven", age=18) tpl = "i am {name:s}, age {age:d}".format(**{"name": "seven", "age": 18}) tpl = "numbers: {:b},{:o},{:d},{:x},{:X}, {:%}".format(15, 15, 15, 15, 15, 15.87623, 2) tpl = "numbers: {:b},{:o},{:d},{:x},{:X}, {:%}".format(15, 15, 15, 15, 15, 15.87623, 2) tpl = "numbers: {0:b},{0:o},{0:d},{0:x},{0:X}, {0:%}".format(15) tpl = "numbers: {num:b},{num:o},{num:d},{num:x},{num:X}, {num:%}".format(num=15)
Das obige ist der detaillierte Inhalt vonString-Formatierung % vs. Format, was ist besser?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!