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()
brain.print("Position: ({}, {})".format(x, y))
# Display a calculation using .format()
brain.print("Sum: {}".format(5 + 3))
wait(1, SECONDS)
# Display the time using .format()
brain.print("Time: {}".format(brain.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
brain.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
brain.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
brain.print("Formatted: ")
brain.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. |
# Display a converted decimal to a percentage
value = 0.875
brain.print("Score: {:.1%}".format(value))
# Output: Score: 87.5%
Hexadecimal#
:#x wandelt Zahlen in Hexadezimalzahlen um.
Usage:
:#x
Parameter |
Beschreibung |
|---|---|
Dieser Formatbezeichner hat keine Parameter. |
# Convert 255 to hexadecimal
number = 255
brain.print("Hex: {:#x}".format(number))
# Output: Hex: 0xff
Binary#
:b wandelt Zahlen in Binärzahlen (Basis 2) um.
Usage:
:b
Parameter |
Beschreibung |
|---|---|
Dieser Formatbezeichner hat keine Parameter. |
# Convert 3 to binary
brain.print("Binary: {:b}".format(3))
# Output: Binary: 11
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.
# Display an answer based on the given emotion
emotion = "good"
brain.print("I'm {}, you?".format(emotion))
+ Operator#
Mehrere Teile lassen sich durch Addition von + verbinden.
Hinweis: Nicht-Zeichenketten müssen zuerst mit str()
# Display the x and y values
x = 10
y = 20
brain.print("X: " + str(x) + ", Y: " + str(y))
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. |
# Capitalize a string with .upper()
message = "vexcode"
brain.print(message.upper()) # Output: VEXCODE
lower#
lower wandelt alle Buchstaben in einer Zeichenkette in Kleinbuchstaben um.
Usage:
lower()
Parameter |
Beschreibung |
|---|---|
Diese Methode hat keine Parameter. |
# Make a string lowercase with .lower()
message = "VEXCODE"
brain.print(message.lower()) # Output: vexcode
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.
message = "Hey everyone!"
if "Hey" in message:
brain.print("Hello!")
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. |
# Check for 'CTE' at the start of a string
message = "CTE Robot"
if message.startswith("CTE"):
brain.print("CTE first!")
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. |
# Check for `Robot` at the end of a string
message = "CTE Robot"
if message.endswith("Robot"):
brain.print("Robot last!")
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.
# Display text on two lines
brain.print("First line\nSecond line")
Tab Spacing#
\t fügt ein Tabulatorzeichen zwischen Wörtern oder Zahlen ein.
# Display the quantity of disks
quantity = 2
brain.print("Disks:\t", quantity)