Formátování řetězců#
Zavedení#
Metoda .format() v Pythonu se používá k vytváření řetězců, které obsahují proměnné, výrazy nebo hodnoty. Tato metoda nahrazuje zástupné symboly složených závorek {} v řetězci hodnotami uvedenými uvnitř .format().
x = 1
y = 5
# Display the variables using .format()
brain.screen.print("Position: ({}, {})".format(x, y))
# Display a calculation using .format()
brain.screen.print("Sum: {}".format(5 + 3))
# Display the robot's battery capacity using .format()
brain.screen.print("Battery: {}%".format(brain.battery.capacity()))
Formátování čísel pomocí .format — Vkládání hodnot a výrazů do řetězce.
:.xf— Nastaví počet zobrazených desetinných míst.round— Zaokrouhlí číslo na zadaný počet desetinných míst.:,— Přidá čárky jako oddělovače tisíců.:.x%— Převede desetinné číslo na procento s x desetinnými místy.:#x— Naformátuje číslo jako hexadecimální.:b— Naformátuje číslo jako binární.
Barvy — Změna barvy textu v konzoli
Colors— Nastaví barvu textu konzole.
Kombinování řetězců – Kombinování textu a hodnot.
.format()— Spojí řetězce a proměnné do jednoho výrazu.+ operator— Ruční zřetězení řetězců s volitelnou konverzí typů.
Řetězcové metody — Změna velikosti písmen textu.
Kontrola podřetězců – Test přítomnosti nebo pozice textu.
in— Zkontroluje, zda v řetězci existuje slovo.startswith()— Zkontroluje, zda řetězec začíná danou hodnotou.endswith()— Zkontroluje, zda řetězec končí danou hodnotou.
Escape sekvence – formátování výstupu pomocí speciálních znaků.
Formátování čísel s .format#
Příkaz .format lze použít k ovládání zobrazení čísel, včetně desetinných míst, zaokrouhlování a dalších stylů formátování, jako například:
Fixed Decimal Places#
.xf určuje, s kolika desetinnými místy se číslo zobrazuje.
Usage:
.xf
Parametry |
Popis |
|---|---|
|
Počet zobrazených desetinných míst. |
# Display pi with 2 decimal places
pi = 3.1415926535
brain.screen.print("Pi: {:.2f}".format(pi))
# Output: Pi: 3.14
Rounding Numbers#
round zaokrouhlí číslo na zadaný počet desetinných míst před formátováním.
Usage:
round(number, x)
Parametry |
Popis |
|---|---|
|
Číslo, které se má zaokrouhlit. |
|
Počet desetinných míst, na které se má zaokrouhlit. |
# Display a value rounded to only 2 decimal places
value = 5.6789
brain.screen.print("Rounded: {}".format(round(value, 2)))
# Output: Rounded: 5.68
Thousands Separator#
:, vkládá čárky jako oddělovače tisíců, aby se velká čísla lépe četla.
Usage:
:,
Parametry |
Popis |
|---|---|
Tento specifikátor formátu nemá žádné parametry. |
# Display a large number separated with commas
number = 1234567
brain.screen.print("Formatted: ")
brain.screen.next_row()
brain.screen.print("{:,}".format(number))
# Output: Formatted: 1,234,567
Percentage#
:.x% formátuje desetinná čísla jako procenta vynásobením hodnoty číslem 100 a přidáním znaménka procenta.
Usage:
:.x%
Parametry |
Popis |
|---|---|
|
Počet zobrazených desetinných míst. |
# Display a converted decimal to a percentage
value = 0.875
brain.screen.print("Score: {:.1%}".format(value))
# Output: Score: 87.5%
Hexadecimal#
:#x převádí čísla do hexadecimálního formátu.
Usage:
:#x
Parametry |
Popis |
|---|---|
Tento specifikátor formátu nemá žádné parametry. |
# Convert 255 to hexadecimal
number = 255
brain.screen.print("Hex: {:#x}".format(number))
# Output: Hex: 0xff
Binary#
:b převádí čísla do binární soustavy (základ 2).
Usage:
:b
Parametry |
Popis |
|---|---|
Tento specifikátor formátu nemá žádné parametry. |
# Convert 3 to binary
brain.screen.print("Binary: {:b}".format(3))
# Output: Binary: 11
Barvy#
Barvu textu při tisku do Print Console můžete změnit pomocí následujících barevných kódů:
[31m— Red[32m— Green[34m— Blue[30m— Black[37m— White[33m— Yellow[91m— Orange[35m— Purple[36m— Cyan[97m— Transparent
Všechny barevné kódy musí pro fungování dodržovat escape sekvenci = \033.
Toto můžete použít přímo v příkazu print s řetězcem.
# Print VEXcode in Red to the Print Console
print("\033[31mVEXcode")
Můžete jej také použít samostatně k nastavení všech příkazů print na nastavenou barvu.
# Set the Print Console text color to Red before printing
print("\033[31m")
print("VEXcode")
Kombinování řetězců#
Řetězce můžete kombinovat (nebo zřetězit) dvěma způsoby:
Using .format#
Vložte hodnoty přímo do řetězce pomocí {}.
# Display an answer based on the given emotion
emotion = "good"
brain.screen.print("I'm {}, you?".format(emotion))
+ Operator#
Spojte více částí pomocí +.
Poznámka: Údaje, které nejsou řetězce, je nutné nejprve převést na řetězce pomocí funkce str().
# Display the x and y values
x = 10
y = 20
brain.screen.print("X: " + str(x) + ", Y: " + str(y))
Řetězcové metody#
Python nabízí vestavěné metody pro úpravu a kontrolu řetězců.
upper#
upper převede všechna písmena v řetězci na velká písmena.
Usage:
upper()
Parametry |
Popis |
|---|---|
Tato metoda nemá žádné parametry. |
message = "vexcode"
brain.screen.print(message.upper()) # Output: VEXCODE
lower#
lower převede všechna písmena v řetězci na malá písmena.
Usage:
lower()
Parametry |
Popis |
|---|---|
Tato metoda nemá žádné parametry. |
message = "VEXCODE"
brain.screen.print(message.lower()) # Output: vexcode
Kontrola podřetězců#
in#
in je klíčové slovo, které vrací booleovskou hodnotu označující, zda v řetězci existuje podřetězec (slovo nebo část textu).
True— Slovo v řetězci existuje.False— Slovo v řetězci neexistuje.
message = "Hey everyone!"
if "Hey" in message:
brain.screen.print("Hello!")
startswith#
startswith vrací booleovskou hodnotu, která označuje, zda řetězec začíná danou hodnotou.
True— Slovo začíná řetězec.False— Slovo nezačíná řetězec.
Usage:
startswith(substring)
Parametry |
Popis |
|---|---|
|
Podřetězec, který se má zkontrolovat na začátku řetězce. |
message = "IQ Robot"
if message.startswith("IQ"):
brain.screen.print("IQ first!")
endswith#
endswith vrací booleovskou hodnotu, která indikuje, zda řetězec končí danou hodnotou.
True— Slovo ukončuje řetězec.False— Slovo nekončí řetězec.
Usage:
endswith(substring)
Parametry |
Popis |
|---|---|
|
Podřetězec, který se má na konci řetězce kontrolovat. |
message = "IQ Robot"
if message.endswith("Robot"):
brain.screen.print("Robot last!")
Únikové sekvence#
Řídicí sekvence jsou speciální znaky používané uvnitř řetězců k formátování textového výstupu. Jsou k dispozici pouze pro použití s konzolí.
New Line#
\n přesune text na nový řádek při tisku.
# Display text on two lines
print("First line\nSecond line")
Tab Spacing#
\t vloží tabulátor mezi slova nebo čísla.
# Display the quantity of blocks
quantity = 2
print("Blocks:\t", quantity)