Karakterlánc formázása#
Bevezetés#
A Pythonban az f-karakterláncok használata a szövegek és számok formázásának ajánlott módja. Lehetővé teszik változók, kifejezések és függvényhívások közvetlen beágyazását {} karakterláncba.
Egy f-karakterlánc létrehozásához adjunk hozzá f a karakterlánc elé, és helyezzünk el minden változót, kifejezést vagy függvényhívást {} karikán belül.
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-karakterláncok – Változók és kifejezések közvetlen beágyazása szövegbe.
f”{value}”– Karakterláncon belüli változókat, kifejezéseket vagy függvényhívásokat jelenít meg.
Számok formázása f-karakterláncokban – A numerikus értékek megjelenésének szabályozása.
:.xf– Beállítja a megjelenítendő tizedesjegyek számát.round– Egy számot adott számú tizedesjegyre kerekít.:,– Vesszőket ad hozzá ezreselválasztóként.:.x%– Tizedesjegyet százalékos értékké alakít x tizedesjegynyi értékkel.:#x– Hexadecimális formátumba rendezi a számot.:b– Bináris formátumba konvertálja a számot.
Karakterlánc-kombináció – Szöveg és értékek kombinálása.
f”{value}”– Karakterláncok és változók kombinálása egyetlen kifejezésben.+ operator– Karakterláncok manuális összefűzése opcionális típuskonverzióval.
Karakterlánc metódusok – Szöveg kis- és nagybetűs írásmódjának módosítása.
upper()– Az összes karaktert nagybetűvé alakítja.lower()– Az összes karaktert kisbetűvé alakítja.
Alkarakterlánc-ellenőrzések ––Szöveg jelenlétét vagy pozícióját vizsgálja.
inben – Ellenőrzi, hogy létezik-e szó egy karakterláncban.startswith()– Ellenőrzi, hogy egy karakterlánc egy adott értékkel kezdődik-e.endswith()– Ellenőrzi, hogy egy karakterlánc egy adott értékkel végződik-e.
Escape Sequences – Kimenet formázása speciális karakterekkel.
Számok formázása f-karakterláncokban#
Az f-karakterláncok a következő formátumleírók használatával lehetővé teszik a tizedesjegyek, a kerekítés, az ezreselválasztók és egyebek pontos szabályozását:
Fixed Decimal Places#
.xf függvény szabályozza, hogy egy szám hány tizedesjegy pontossággal jelenjen meg.
Usage:
.xf
Paraméterek |
Leírás |
|---|---|
|
A megjelenítendő tizedesjegyek száma. |
# Display pi with 2 decimal places
pi = 3.1415926535
robot.screen.print(f"Pi: {pi:.2f}") # Output: Pi: 3.14
Rounding Numbers#
round az f-karakterláncon kívüli vagy a {} belüli számokat kerekíti.
Usage:
round(number, x)
Paraméterek |
Leírás |
|---|---|
|
A kerekítendő szám. |
|
A tizedesjegyek száma, amelyre kerekíteni kell. |
# Display a value rounded to only 2 decimal places
value = 5.6789
robot.screen.print(f"{round(value, 2)}") # Output: 5.68
Thousands Separator#
, értékek vesszőket szúrnak be ezrelválasztóként, hogy a nagy számok olvashatóbbak legyenek.
Usage:
,
Paraméterek |
Leírás |
|---|---|
Ennek a formátumleírónak nincsenek paraméterei. |
# Display a large number separated with commas
number = 1234567
robot.screen.print(f"{number:,}") # Output: 1,234,567
Percentage#
.x% függvény a decimális értékeket százalékként formázza.
Usage:
.x%
Paraméterek |
Leírás |
|---|---|
|
A megjelenítendő tizedesjegyek száma. |
# Display a converted decimal to a percentage
value = 0.875
robot.screen.print(f"{value:.1%}") # Output: 87.5%
Hexadecimal#
.#x parancs hexadecimális számrendszerbe konvertálja a számokat.
Usage:
.#x
Paraméterek |
Leírás |
|---|---|
Ennek a formátumleírónak nincsenek paraméterei. |
# Convert 255 to hexadecimal
number = 255
robot.screen.print(f"{number:#x}") # Output: 0xff
Binary#
b parancs bináris (2-es alapú) számrendszerbe konvertálja a számokat.
Usage:
b
Paraméterek |
Leírás |
|---|---|
Ennek a formátumleírónak nincsenek paraméterei. |
# Convert 3 to binary
robot.screen.print(f"Binary: {3:b}") # Output: 11
Karakterláncok kombinálása#
A karakterláncokat kétféleképpen kombinálhatja (vagy összefűzheti):
Using f-strings#
f-sztringek esetén a változókat közvetlenül {} karakterláncokba ágyazhatja be.
# Display an answer based on the given emotion
emotion = "good"
robot.screen.print(f"I'm {emotion}, you?")
+ Operator#
A karakterláncokat manuálisan is kombinálhatja a + operátorral.
Megjegyzés: A nem karakterláncokat először karakterlánccá kell alakítani str() függvénnyel.
# Display the x and y values
x = 10
y = 20
robot.screen.print("X: " + str(x) + ", Y: " + str(y))
Karakterlánc metódusok#
A Python beépített metódusokat biztosít a karakterláncok módosítására és ellenőrzésére.
upper#
upper egy karakterlánc összes betűjét nagybetűvé alakítja.
Usage:
upper()
Paraméterek |
Leírás |
|---|---|
Ennek a metódusnak nincsenek paraméterei. |
message = "vexcode"
robot.screen.print(message.upper()) # Output: VEXCODE
lower#
lower egy karakterlánc összes betűjét kisbetűvé alakítja.
Usage:
lower()
Paraméterek |
Leírás |
|---|---|
Ennek a metódusnak nincsenek paraméterei. |
message = "VEXCODE"
robot.screen.print(message.lower()) # Output: vexcode
Alkarakterláncok keresése#
in#
in -ben egy kulcsszó, amely egy logikai értéket ad vissza, amely jelzi, hogy létezik-e alkarakterlánc (szó vagy szövegrész) a karakterláncban.
True– A szó létezik a karakterláncban.False– A szó nem létezik a karakterláncban.
message = "Hey everyone!"
if "Hey" in message:
robot.screen.print("Hello!")
startswith#
startswith egy logikai értéket ad vissza, amely azt jelzi, hogy egy karakterlánc egy adott értékkel kezdődik-e.
True– A szó kezdi a karakterláncot.False– A szó nem a karakterlánc elején szerepel.
Usage:
startswith(substring)
Paraméterek |
Leírás |
|---|---|
|
A karakterlánc elején ellenőrizendő alkarakterlánc. |
message = "AIM Robot"
if message.startswith("AIM"):
robot.screen.print("AIM first!")
endswith#
endswith egy logikai értéket ad vissza, amely azt jelzi, hogy egy karakterlánc egy adott értékkel végződik-e.
True– A szó véget vet a karakterláncnak.False– A szó nem végzi a karakterláncot.
Usage:
endswith(substring)
Paraméterek |
Leírás |
|---|---|
|
A karakterlánc végén ellenőrizendő részkarakterlánc. |
message = "AIM Robot"
if message.endswith("Robot"):
robot.screen.print("Robot last!")
Escape szekvenciák#
Az escape-szekvenciák speciális karakterek, amelyeket karakterláncokon belül használnak a szövegkimenet formázására. Csak a konzolban használhatók.
New Line#
\n parancs új sorba helyezi a szöveget nyomtatáskor.
# Display text on two lines
print("First line\nSecond line")
Tab Spacing#
\t tabulátort szúr be szavak vagy számok közé,
# Display the quantity of barrels
quantity = 2
print("Barrels:\t", quantity)