CodeGym /Kurse /Python SELF DE /Erweitertes Arbeiten mit der Funktion print()

Erweitertes Arbeiten mit der Funktion print()

Python SELF DE
Level 4 , Lektion 4
Verfügbar

10.1 format()

Oft müssen wir viele Daten in der Konsole (auf dem Bildschirm) ausgeben. Wir sind nicht die ersten, die damit konfrontiert wurden — deshalb gibt es in Python schon lange die Funktion format(), die es ermöglicht, Zeichenketten zu verbinden und Daten einfacher und verständlicher auszugeben.

Die Funktion format() wird verwendet, um Werte an bestimmten Positionen in eine Zeichenkette einzufügen. Der Syntax der Funktion sieht folgendermaßen aus:


"Zeichenkettenschablone von {} bis {}".format(wert1, wert2,…)

Fakt 1. Die Funktion format() ist eine Tochterfunktion der Zeichenkette, deshalb wird sie bei einer Zeichenkette aufgerufen. Anstatt die Zeichenkette an die Funktion zu übergeben, schreiben wir die Zeichenkette, dann einen Punkt und rufen dann die Funktion format() auf und übergeben ihre Parameter.

Fakt 2. Die Funktion format() füllt die Zeichenkettenschablone mit den übergebenen Werten. Sie konvertiert die übergebenen Werte in Zeichenketten (wenn dort z.B. Zahlen waren) und fügt sie an den mit {} markierten Positionen ein. Eine solche Stelle zum Einfügen eines Wertes wird placeholder genannt.

Grundlegende Verwendung:


welcome_message = "Hallo, {}, willkommen im {}!"
print(welcome_message.format("Anna", "unserem Laden"))               
        

Ergebnis: "Hallo, Anna, willkommen im unserem Laden!"

Formatierung von Zahlen:


output = "Daten: {0:.2f} und {1:.2f}".format(3.1415926, 2.71828)
print(output)              
        

Ergebnis: "Daten: 3.14 und 2.72" — Demonstration der Begrenzung der Ausgabe auf zwei Dezimalstellen.

Verwendung von Schlüsselwörtern:


output = "{name} arbeitet bei {company}"
print(output.format(name="Sergej", company="Google"))
        

Ergebnis: "Sergej arbeitet bei Google"

Die Verwendung von format() verbessert die Lesbarkeit und Wartbarkeit des Codes, da das Format einfach geändert werden kann, ohne die gesamte Zeichenkette bearbeiten zu müssen.

10.2 f-Notation

Ab Version 3.6 gibt es in Python einen neuen Typ von Zeichenketten — die f-strings, was wörtlich „formatted string“ bedeutet. Diese Zeichenketten verbessern die Lesbarkeit des Codes und sind schneller als andere Formatierungsmethoden.

Um f-strings zu verwenden, setzt man vor die Zeichenkette einen Buchstaben "f" oder "F". Die Ausdrücke zum Einfügen werden in geschweifte Klammern {} gesetzt:

Beispiel:


force = "Dunkle Seite"
message = f"Möge die Macht mit dir sein, {force}!"
print(message)  # Ausgabe: Möge die Macht mit dir sein, Dunkle Seite! 
        

Wichtig! In den geschweiften Klammern können Variablen angegeben werden, die im aktuellen Gültigkeitsbereich verfügbar sind (dazu später mehr), und Python konvertiert sie automatisch in eine Zeichenkette und fügt sie an der richtigen Stelle ein.

Beispiel:


age = 28
message = f"Ich bin {age} Jahre alt"
print(message)  # Ausgabe: Ich bin 28 Jahre alt               
        

Darüber hinaus können in den geschweiften Klammern Ausdrücke mit vielen Variablen verwendet werden.

Beispiel:


birth_year = 1985
current_year = 2024
message = f"Ich bin {current_year - birth_year} Jahre alt"
print(message)  # Ausgabe: Ich bin 39 Jahre alt
        

Unter der Haube wird das alles in einen Aufruf der Funktion format() umgewandelt, aber der neue Ansatz ist wirklich bequemer.

Benutze es nach Herzenslust.

10.3 Parameter sep und end

In Python bietet die Funktion print() zwei nützliche Parameter — sep und end, die es ermöglichen, die Datenausgabe zu steuern. Diese Parameter machen die Funktion print() flexibler und können verwendet werden, um die Ausgabe zu formatieren, ohne zusätzliche Funktionen oder komplexe Zeichenkettenoperationen zu benötigen.

Der Parameter sep bestimmt das Zeichen oder die Zeichenkette, die zur Trennung mehrerer an print() übergebener Werte verwendet wird. Standardmäßig ist sep als Leerzeichen festgelegt. Das bedeutet, wenn du mehrere Argumente an print() übergibst, werden sie durch ein Leerzeichen getrennt.

Und wenn du möchtest, dass die Daten nicht durch ein Leerzeichen, sondern beispielsweise durch ein Komma getrennt werden, musst du am Ende den Parameter sep hinzufügen und ihm direkt eine neue Trennzeichenzeichenkette zuweisen.

Beispiel:


            print("Hallo", "Welt")  # Ausgabe: Hallo Welt 
            print("Hallo", "Welt", sep=", ")  # Ausgabe: Hallo, Welt
        

Oder du kannst zum Beispiel dafür sorgen, dass jeder Wert in einer neuen Zeile ausgegeben wird. Dann musst du dem Parameter sep das spezielle Zeichen für den Zeilenumbruch zuweisen — es wird durch das Zeichenpaar “\n” dargestellt.

Beispiel Erklärung

print(1, 2, 3, 4, 5, sep=",\n")  

Schleife gibt die Zahlen aus
1,
2,
3,
4,
5
            

Der Parameter end bestimmt, was nach allen übergebenen Werten ausgegeben wird. Der Standardwert von end — das neue Zeilenzeichen (\n), was bedeutet, dass nach der Ausführung von print() eine neue Zeile eingefügt wird.

Indem du end änderst, kannst du steuern, wie die Daten ausgegeben werden, z.B. um die Ausgabe in derselben Zeile fortzusetzen:

Beispiel:


            print("Hallo", end=" ")
            print("Welt")  # Ausgabe: Hallo Welt               
        

Die Verwendung von sep und end kann in Szenarien, in denen eine spezielle Formatierung der Ausgabe erforderlich ist, äußerst nützlich sein, beispielsweise beim Erstellen von Tabellen, Berichten oder beim Ausgeben von Daten in einer Zeile ohne automatischen Zeilenumbruch.

Neben der Vereinfachung des Codes und dem Vermeiden, manuell Trennzeichen hinzuzufügen oder Zeilenumbrüche zu steuern, erhöht die Verwendung von sep und end die Lesbarkeit und Wartbarkeit des Codes.

Kommentare
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION