Zeichenkettenformatierung#
Einführung#
f-Strings sind die empfohlene Methode, um Text und Zahlen in Python zu formatieren. Sie ermöglichen es, Variablen, Ausdrücke und Funktionsaufrufe direkt in {} einzubetten.
Um eine f-Zeichenkette zu erstellen, fügen Sie f vor der Zeichenkette ein und platzieren Sie jede Variable, jeden Ausdruck oder jeden Funktionsaufruf innerhalb von {}.
x = 1
y = 5
# Display the variables using an f-string
robot.screen.print(f"Position: ({x}, {y})")
# Display a calculation with an f-string
robot.screen.print(f"Sum: {5 + 3}")
# Display the robot's battery capacity with an f-string
robot.screen.print(f"Battery: {robot.get_battery_level()}%")
f-Strings – Variablen und Ausdrücke direkt in Text einbetten.
f”{value}”– Zeigt Variablen, Ausdrücke oder Funktionsaufrufe innerhalb einer Zeichenkette an.
Formatierung von Zahlen in f-Strings – Steuerung der Darstellung numerischer Werte.
:.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.
Zeichenkettenkombination – Text und Werte kombinieren.
f”{value}”– 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.
Teilzeichenkettenprüfung ––Prüfen 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 in f-Strings formatieren#
f-Strings ermöglichen die präzise Steuerung von Dezimalstellen, Rundungen, Tausendertrennzeichen und mehr durch die Verwendung der folgenden Formatbezeichner:
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
robot.screen.print(f"Pi: {pi:.2f}") # Output: Pi: 3.14
Rounding Numbers#
round rundet Zahlen außerhalb einer f-Saite oder innerhalb der {}.
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
robot.screen.print(f"{round(value, 2)}") # Output: 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
robot.screen.print(f"{number:,}") # Output: 1,234,567
Percentage#
.x% formatiert Dezimalwerte als Prozentsätze.
Usage:
.x%
Parameter |
Beschreibung |
|---|---|
|
Die Anzahl der anzuzeigenden Dezimalstellen. |
# Display a converted decimal to a percentage
value = 0.875
robot.screen.print(f"{value:.1%}") # Output: 87.5%
Hexadecimal#
.#x wandelt Zahlen in Hexadezimalzahlen um.
Usage:
.#x
Parameter |
Beschreibung |
|---|---|
Dieser Formatbezeichner hat keine Parameter. |
# Convert 255 to hexadecimal
number = 255
robot.screen.print(f"{number:#x}") # Output: 0xff
Binary#
b wandelt Zahlen in Binärzahlen (Basis 2) um.
Usage:
b
Parameter |
Beschreibung |
|---|---|
Dieser Formatbezeichner hat keine Parameter. |
# Convert 3 to binary
robot.screen.print(f"Binary: {3:b}") # Output: 11
Kombination von Zeichenketten#
Sie können Zeichenketten auf zwei Arten kombinieren (oder verketten):
Using f-strings#
Mit f-Strings können Sie Variablen direkt in {} einbetten.
# Display an answer based on the given emotion
emotion = "good"
robot.screen.print(f"I'm {emotion}, you?")
+ Operator#
Sie können Zeichenketten manuell mit dem Operator + kombinieren.
Hinweis: Nicht-Zeichenketten müssen zuerst mit str()
# Display the x and y values
x = 10
y = 20
robot.screen.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. |
message = "vexcode"
robot.screen.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. |
message = "VEXCODE"
robot.screen.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:
robot.screen.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. |
message = "AIM Robot"
if message.startswith("AIM"):
robot.screen.print("AIM 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. |
message = "AIM Robot"
if message.endswith("Robot"):
robot.screen.print("Robot last!")
Fluchtsequenzen#
Escape-Sequenzen sind Sonderzeichen, die innerhalb von Zeichenketten verwendet werden, um die Textausgabe zu formatieren. Sie sind nur für die Verwendung mit der Konsole verfügbar.
New Line#
\n verschiebt den Text beim Drucken in eine neue Zeile.
# Display text on two lines
print("First line\nSecond line")
Tab Spacing#
\t fügt ein Tabulatorzeichen zwischen Wörtern oder Zahlen ein,
# Display the quantity of barrels
quantity = 2
print("Barrels:\t", quantity)