In Python gibt es mehrere Möglichkeiten, die Ausgabe eines Programms darzustellen. Daten können in einer für Menschen lesbaren Form gedruckt oder zur späteren Verwendung in eine Datei geschrieben werden, oder sogar in einer anderen spezifizierten Form. Benutzer wünschen sich oft mehr Kontrolle über die Formatierung der Ausgabe als nur das Drucken von durch Leerzeichen getrennten Werten.
Ausgabeformatierung in Python
Es gibt mehrere Möglichkeiten, die Ausgabe mit der String-Methode in zu formatieren Python .
- Verwenden des String-Modulo-Operators (%)
- Verwenden der Formatierungsmethode
- Verwenden der String-Methode
- Pythons Formatkonvertierungsregel
Formatieren der Ausgabe mit dem String-Modulo-Operator (%)
Der %-Operatormodul kann auch zur String-Formatierung verwendet werden. Es interpretiert das linke Argument ähnlich wie ein Format im printf()-Stil wie in C-Sprachzeichenfolgen, die auf das rechte Argument angewendet werden sollen. In Python gibt es keine printf()-Funktion, aber die Funktionalität des alten printf ist darin enthalten Python . Zu diesem Zweck wird der Modulo-Operator % von der String-Klasse überladen, um eine String-Formatierung durchzuführen. Daher wird er oft als String-Modulo-Operator (oder manchmal sogar als Modulo-Operator) bezeichnet. Der String-Modulo-Operator ( % ) ist in Python (3.x) immer noch verfügbar und wird häufig verwendet. Heutzutage wird jedoch der alte Formatierungsstil aus der Sprache entfernt.
Python3
# Python program showing how to use string modulo operator(%)> print>(>'Geeks : %2d, Portal : %5.2f'> %> (>1>,>05.333>))> print>(>'Total students : %3d, Boys : %2d'> %> (>240>,>120>))># print integer value> print>(>'%7.3o'> %> (>25>))># print octal value> print>(>'%10.3E'> %> (>356.08977>))># print exponential value> |
>
>
Ausgabe
Geeks : 1, Portal : 5.33 Total students : 240, Boys : 120 031 3.561E+02>

Ausgabeformatierung mit Modulo-Operator
In unserem Beispiel gibt es zwei davon: %2d und %5.2f. Die allgemeine Syntax für einen Formatplatzhalter lautet:
%[flags][width][.precision]type>
Werfen wir einen Blick auf die Platzhalter in unserem Beispiel.
- Der erste Platzhalter „%2d“ wird für die erste Komponente unseres Tupels verwendet, also die ganze Zahl 1. Er wird mit 2 Zeichen ausgegeben, und da 1 nur aus einer Ziffer besteht, wird die Ausgabe mit 1 führenden Leerzeichen aufgefüllt.
- Der zweite Platzhalter „%5.2f“ steht für eine Float-Zahl. Wie andere Platzhalter wird es mit dem %-Zeichen eingeleitet. Es gibt die Gesamtzahl der Ziffern an, die die Zeichenfolge enthalten soll, einschließlich des Dezimalpunkts und aller Ziffern vor und nach dem Dezimalpunkt.
- Unsere Float-Nummer 05.333 ist mit 5 Zeichen und einer Genauigkeit von 2 formatiert, angegeben durch die Zahl nach dem „.“ im Platzhalter. Das letzte Zeichen „f“ gibt an, dass der Platzhalter einen Float-Wert darstellt.
Formatieren der Ausgabe mit der Formatmethode
Die Methode format() wurde in Python(2.6) hinzugefügt. Die Formatierungsmethode von Zeichenfolgen erfordert mehr manuellen Aufwand. Benutzer verwenden {}, um zu markieren, wo eine Variable ersetzt wird, und können detaillierte Formatierungsanweisungen bereitstellen, aber der Benutzer muss auch die zu formatierenden Informationen angeben. Mit dieser Methode können wir Elemente innerhalb einer Ausgabe durch Positionsformatierung verketten. Zum Beispiel -
Beispiel 1: Der Code erklärt verschiedene Python-Zeichenfolgenformatierungstechniken. Die Werte werden entweder explizit angegeben oder in der Reihenfolge, in der sie in der format()-Prozedur erscheinen, auf sie verwiesen. F-Strings ermöglichen die Verwendung von geschweiften Klammern und dem Präfix „f“, um Ausdrücke in Zeichenfolgen einzubetten Literale. Die Ausdrücke der f-Strings werden bewertet und durch die entsprechenden Werte ersetzt.
Python3
Variables globales Javascript
print>(>'I love {} for '{}!''>.>format>(>'Geeks'>,>'Geeks'>))> # using format() method and referring a position of the object> print>(>'{0} and {1}'>.>format>(>'Geeks'>,>'Portal'>))> print>(>'{1} and {0}'>.>format>(>'Geeks'>,>'Portal'>))> print>(f>'I love {'Geeks'} for '{'Geeks'}!''>)> # using format() method and referring a position of the object> print>(f>'{'Geeks'} and {'Portal'}'>)> |
>
>
Ausgabe
I love Geeks for 'Geeks!' Geeks and Portal Portal and Geeks I love Geeks for 'Geeks!' Geeks and Portal>
Die darin enthaltenen Klammern und Zeichen (genannt Felder formatieren ) werden durch die an die format()-Methode übergebenen Objekte ersetzt. Eine Zahl in den Klammern kann verwendet werden, um auf die Position des Objekts zu verweisen, das an die Methode format() übergeben wird.
Beispiel 2: Mit Hilfe von Positionsparametern und einem benannten Argument („other“) in der ersten Zeile werden die Werte „Geeks“, „For“ und „Geeks“ zur String-Vorlage hinzugefügt. „Geeks:12, Portal: 0.55“ wird gedruckt, wobei der erste Wert als zweistellige Ganzzahl erscheint und die zweite Zahl zwei Dezimalstellen und eine Breite von 8 Bit hat. Die benannten Argumente der Methode format(), gekennzeichnet durch spezifische Bezeichnungen („a“ und „p“) für die Zahlen „453“ und „59.058“,
Python3
# combining positional and keyword arguments> print>(>'Number one portal is {0}, {1}, and {other}.'> >.>format>(>'Geeks'>,>'For'>, other>=>'Geeks'>))> # using format() method with number> print>(>'Geeks :{0:2d}, Portal :{1:8.2f}'>.> >format>(>12>,>00.546>))> # Changing positional argument> print>(>'Second argument: {1:3d}, first one: {0:7.2f}'>.> >format>(>47.42>,>11>))> print>(>'Geeks: {a:5d}, Portal: {p:8.2f}'>.> >format>(a>=> 453>, p>=> 59.058>))> |
Salman Khan Khan Alter
>
>
Ausgabe
Number one portal is Geeks, For, and Geeks. Geeks :12, Portal : 0.55 Second argument: 11, first one: 47.42 Geeks: 453, Portal: 59.06>
Das folgende Diagramm mit einer Beispielverwendung zeigt, wie die Formatmethode für Positionsparameter funktioniert:

Ausgabeformatierung mit der Format-Methode
Beispiel 3: Der Code zeigt, wie Wörterbücher mit der format()-Methode von Python verwendet werden. Die „Registerkarte“ des Wörterbuchs im ersten Beispiel enthält Schlüssel und zugehörige Werte. Die Methode format() verwendet die Indizierung, um die Werte in die Zeichenfolgenvorlage einzufügen. Im zweiten Beispiel werden benannte Schlüssel in einem Wörterbuch als Daten verwendet.
Python3
tab>=> {>'geeks'>:>4127>,>'for'>:>4098>,>'geek'>:>8637678>}> # using format() in dictionary> print>(>'Geeks: {0[geeks]:d}; For: {0[for]:d}; '> >'Geeks: {0[geek]:d}'>.>format>(tab))> data>=> dict>(fun>=>'GeeksForGeeks'>, adj>=>'Portal'>)> print>(>'I love {fun} computer {adj}'>.>format>(>*>*>data))> |
>
>
Ausgabe
Geeks: 4127; For: 4098; Geeks: 8637678 I love GeeksForGeeks computer Portal>
Formatieren der Ausgabe mit der String-Methode
Diese Ausgabe wird mit formatiert String-Methode, d.h. Slicing- und Verkettungsoperationen. Der String-Typ verfügt über einige Methoden, die dabei helfen, die Ausgabe auf elegantere Weise zu formatieren. Einige Methoden, die beim Formatieren einer Ausgabe helfen, sind: str.light() , str.rjust() , Und str.centre()
Python3
cstr>=> 'I love geeksforgeeks'> # Printing the center aligned string with fillchr> print>(>'Center aligned string with fillchr: '>)> print>(cstr.center(>40>,>'#'>))> # Printing the left aligned string with '-' padding> print>(>'The left aligned string is : '>)> print>(cstr.ljust(>40>,>'-'>))> # Printing the right aligned string with '-' padding> print>(>'The right aligned string is : '>)> print>(cstr.rjust(>40>,>'-'>))> |
>
>
Ausgabe
Center aligned string with fillchr: ##########I love geeksforgeeks########## The left aligned string is : I love geeksforgeeks-------------------- The right aligned string is : --------------------I love geeksforgeeks>
Pythons Formatkonvertierungsregel
In dieser Tabelle sind die Standardrichtlinien zur Formatkonvertierung aufgeführt, die von der Funktion format() von Python verwendet werden.
römische Ziffer 1 bis 100
| Konvertierung | Bedeutung |
|---|---|
| D | Dezimale Ganzzahl |
| B | Binärformat |
| Ö | Oktalformat |
| In | Veraltet und gleichbedeutend mit „d“ |
| x oder X | Hexadezimalformat |
| e oder E | Exponentielle Notation |
| f oder F | Gleitkomma-Dezimalzahl |
| g oder G | Allgemeines Format |
| C | Einzelner Charakter |
| R | String-Format (mit repr()) |
| S | String-Format (mit str())) |
| % | Prozentsatz |