Zeichenkettenformatierung#
Einführung#
Die Methode .format() in Python dient dazu, Zeichenketten zu erstellen die Variablen, Ausdrücke oder Werte enthalten. Diese Methode ersetzt Platzhalter in geschweiften Klammern {} in einer Zeichenkette durch die innerhalb .format()` angegebenen Werte.
x = 1
y = 5
# Display the variables using .format()
print("Position: ({}, {})".format(x, y))
# Display a calculation using .format()
print("Sum: {}".format(5 + 3))
wait(1, SECONDS)
# Display the time using .format()
print("Time: {}".format(timer.time(SECONDS)))
Zahlen formatieren mit .format – Werte und Ausdrücke in eine Zeichenkette einfügen.
:.xf– Legt die Anzahl der anzuzeigenden Dezimalstellen fest.round– Rundet eine Zahl auf eine vorgegebene Anzahl von Dezimalstellen.:,– Fügt Kommas als Tausendertrennzeichen hinzu.:.x%– Wandelt eine Dezimalzahl in einen Prozentsatz mit x Dezimalstellen um.:#x– Formatiert eine Zahl als Hexadezimalzahl.:b– Formatiert eine Zahl als Binärzahl.
Zeichenketten kombinieren – Text und Werte kombinieren.
.format()– Kombiniert Zeichenketten und Variablen in einem einzigen Ausdruck.+ operator– Zeichenketten manuell verketten mit optionaler Typkonvertierung.
String-Methoden – Groß-/Kleinschreibung von Text ändern.
upper()– Wandelt alle Zeichen in Großbuchstaben um.lower()– Wandelt alle Zeichen in Kleinbuchstaben um.
Prüfung auf Teilzeichenketten – Test auf Vorhandensein oder Position von Text.
in– Prüft, ob ein Wort in einer Zeichenkette existiert.startswith()– Prüft, ob eine Zeichenkette mit einem gegebenen Wert beginnt.endswith()– Prüft, ob eine Zeichenkette mit einem gegebenen Wert endet.
Escape-Sequenzen – Ausgabe mit Sonderzeichen formatieren.
Zahlen mit .format#
.format lässt sich steuern, wie Zahlen dargestellt werden, einschließlich Dezimalstellen, Rundung und anderer Formatierungsstile wie zum Beispiel:
Fixed Decimal Places#
.xf steuert, mit wie vielen Dezimalstellen eine Zahl angezeigt wird.
Usage:
:.xf
Parameter |
Beschreibung |
|---|---|
|
Die Anzahl der anzuzeigenden Dezimalstellen. |
# Display pi with 2 decimal places
pi = 3.1415926535
console.print("Pi: {:.2f}".format(pi))
# Output: Pi: 3.14
Rounding Numbers#
round rundet eine Zahl auf eine bestimmte Anzahl von Dezimalstellen vor der Formatierung.
Usage:
round(number, x)
Parameter |
Beschreibung |
|---|---|
|
Die zu rundende Zahl. |
|
Die Anzahl der Dezimalstellen, auf die gerundet werden soll. |
# Display a value rounded to only 2 decimal places
value = 5.6789
console.print("Rounded: {}".format(round(value, 2)))
# Output: Rounded: 5.68
Thousands Separator#
:, fügt Kommas als Tausendertrennzeichen ein, um große Zahlen besser lesbar zu machen.
Usage:
:,
Parameter |
Beschreibung |
|---|---|
Dieser Formatbezeichner hat keine Parameter. |
# Display a large number separated with commas
number = 1234567
print("Formatted: ")
print("{:,}".format(number))
# Output: Formatted: 1,234,567
Percentage#
:.x% formatiert Dezimalwerte als Prozentsätze, indem der Wert mit 100 multipliziert und ein Prozentzeichen hinzugefügt wird.
Usage:
:.x%
Parameter |
Beschreibung |
|---|---|
|
Die Anzahl der anzuzeigenden Dezimalstellen. |
def main():
# Display a converted decimal to a percentage
value = 0.875
console.print("Score: {:.1%}".format(value))
# Output: Score: 87.5%
# Start threads — Do not delete
start_thread(main)
Hexadecimal#
:#x wandelt Zahlen in Hexadezimalzahlen um.
Usage:
:#x
Parameter |
Beschreibung |
|---|---|
Dieser Formatbezeichner hat keine Parameter. |
def main():
# Convert 255 to hexadecimal
number = 255
console.print("Hex: {:#x}".format(number))
# Output: Hex: 0xff
# Start threads — Do not delete
start_thread(main)
Binary#
:b wandelt Zahlen in Binärzahlen (Basis 2) um.
Usage:
:b
Parameter |
Beschreibung |
|---|---|
Dieser Formatbezeichner hat keine Parameter. |
def main():
# Convert 3 to binary
console.print("Binary: {:b}".format(3))
# Output: Binary: 11
# Start threads — Do not delete
start_thread(main)
Kombination von Zeichenketten#
Sie können Zeichenketten auf zwei Arten kombinieren (oder verketten):
Using .format#
Fügen Sie Werte direkt in die Zeichenkette ein, indem Sie {} verwenden.
def main():
# Display an answer based on the given emotion
emotion = "good"
console.print("I'm {}, you?".format(emotion))
# Start threads — Do not delete
start_thread(main)
+ Operator#
Mehrere Teile lassen sich durch Addition von + verbinden.
Hinweis: Nicht-Zeichenketten müssen zuerst mit str()
def main():
# Display the x and y values
x = 10
y = 20
console.print("X: " + str(x) + ", Y: " + str(y))
# Start threads — Do not delete
start_thread(main)
String-Methoden#
Python bietet integrierte Methoden zum Modifizieren und Überprüfen von Zeichenketten.
upper#
upper wandelt alle Buchstaben in einer Zeichenkette in Großbuchstaben um.
Usage:
upper()
Parameter |
Beschreibung |
|---|---|
Diese Methode hat keine Parameter. |
def main():
# Capitalize a string with .upper()
message = "vexcode"
console.print(message.upper()) # Output: VEXCODE
# Start threads — Do not delete
start_thread(main)
lower#
lower wandelt alle Buchstaben in einer Zeichenkette in Kleinbuchstaben um.
Usage:
lower()
Parameter |
Beschreibung |
|---|---|
Diese Methode hat keine Parameter. |
def main():
# Make a string lowercase with .lower()
message = "VEXCODE"
console.print(message.lower()) # Output: vexcode
# Start threads — Do not delete
start_thread(main)
Prüfung auf Teilzeichenketten#
in#
in ist ein Schlüsselwort, das einen booleschen Wert zurückgibt, der angibt, ob eine Teilzeichenkette (ein Wort oder ein Textabschnitt) in einer Zeichenkette vorhanden ist.
True– Das Wort ist in der Zeichenkette enthalten.False– Das Wort existiert nicht in der Zeichenkette.
def main():
message = "Hey everyone!"
if "Hey" in message:
console.print("Hello!")
# Start threads — Do not delete
start_thread(main)
startswith#
startswith gibt einen booleschen Wert zurück, der angibt, ob eine Zeichenkette mit einem bestimmten Wert beginnt.
True– Das Wort beginnt die Zeichenkette.False– Das Wort steht nicht am Anfang der Zeichenkette.
Usage:
startswith(substring)
Parameter |
Beschreibung |
|---|---|
|
Die zu überprüfende Teilzeichenkette am Anfang der Zeichenkette. |
def main():
# Check for 'V5' at the start of a string
message = "V5 Robot"
if message.startswith("V5"):
console.print("V5 first!")
# Start threads — Do not delete
start_thread(main)
endswith#
endswith gibt einen booleschen Wert zurück, der angibt, ob eine Zeichenkette mit einem bestimmten Wert endet.
True– Das Wort beendet die Zeichenkette.False– Das Wort beendet nicht die Zeichenkette.
Usage:
endswith(substring)
Parameter |
Beschreibung |
|---|---|
|
Die zu überprüfende Teilzeichenkette am Ende der Zeichenkette. |
def main():
# Check for `Robot` at the end of a string
message = "V5 Robot"
if message.endswith("Robot"):
console.print("Robot last!")
# Start threads — Do not delete
start_thread(main)
Fluchtsequenzen#
Escape-Sequenzen sind spezielle Zeichen, die innerhalb von Zeichenketten verwendet werden, um die Textausgabe zu formatieren.
New Line#
\n verschiebt den Text beim Drucken in eine neue Zeile.
def main():
# Display text on two lines
console.print("First line\nSecond line")
# Start threads — Do not delete
start_thread(main)
Tab Spacing#
\t fügt ein Tabulatorzeichen zwischen Wörtern oder Zahlen ein.
def main():
# Display the quantity of disks
quantity = 2
console.print("Disks:\t", quantity)
# Start threads — Do not delete
start_thread(main)