Merkkijonojen muotoilu#
Johdanto#
f-merkkijonot ovat suositeltu tapa muotoilla tekstiä ja numeroita Pythonissa. Ne mahdollistavat muuttujien, lausekkeiden ja funktiokutsujen upottamisen suoraan {} -merkkijonojen sisään.
Luodaksesi f-merkkijonon, lisää f merkkijonon eteen ja sijoita mikä tahansa muuttuja, lauseke tai funktiokutsu merkkijonon {} sisään.
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-merkkijonot – Upota muuttujia ja lausekkeita suoraan tekstiin.
f”{value}”– Näyttää merkkijonon sisällä olevia muuttujia, lausekkeita tai funktiokutsuja.
F-merkkijonojen numeroiden muotoilu – Hallitse numeeristen arvojen ulkoasua.
:.xf– Asettaa näytettävien desimaalien määrän.round– Pyöristää luvun annettuun desimaalien määrään.:,– Lisää pilkut tuhaterottimina.:.x%– Muuntaa desimaaliluvun prosenttiluvuksi, jossa on x desimaalia.:#x– Muotoilee luvun heksadesimaaliluvuksi.:b– Muotoilee luvun binääriluvuksi.
Merkkijonoyhdistelmä – Yhdistä teksti ja arvot.
f”{value}”– Yhdistä merkkijonot ja muuttujat yhteen lausekkeeseen.+ operator– Yhdistä merkkijonot manuaalisesti valinnaisella tyyppimuunnoksella.
Merkkijonometodit – Muuta tekstin kirjainkokoa.
upper()– Muuntaa kaikki merkit isoksi kirjaimiksi.lower()– Muuntaa kaikki merkit pieniksi kirjaimiksi.
Alamerkkijonojen tarkistukset ––Testaa tekstin olemassaolon tai sijainnin.
in– Tarkistaa, onko merkkijonossa sana.startswith()– Tarkistaa, alkaako merkkijono annetulla arvolla.endswith()– Tarkistaa, päättyykö merkkijono annettuun arvoon.
Escape-sekvenssit – Muotoile tuloste erikoismerkeillä.
Numeroiden muotoilu f-merkkijonoissa#
f-merkkijonot mahdollistavat desimaalien, pyöristämisen, tuhaterotinten ja muiden ominaisuuksien tarkan hallinnan käyttämällä seuraavia muotoilumäärittelijöitä:
Fixed Decimal Places#
.xf määrittää, kuinka monella desimaalipisteellä luku näytetään.
Usage:
.xf
Parametrit |
Kuvaus |
|---|---|
|
Näytettävien desimaalien määrä. |
# Display pi with 2 decimal places
pi = 3.1415926535
robot.screen.print(f"Pi: {pi:.2f}") # Output: Pi: 3.14
Rounding Numbers#
round pyöristää numerot f-merkkijonon ulkopuolella tai {} sisällä.
Usage:
round(number, x)
Parametrit |
Kuvaus |
|---|---|
|
Pyöristettävä luku. |
|
Desimaalien määrä, joihin pyöristetään. |
# Display a value rounded to only 2 decimal places
value = 5.6789
robot.screen.print(f"{round(value, 2)}") # Output: 5.68
Thousands Separator#
, lisää pilkut tuhaterottimina, jotta suuret luvut olisivat helpommin luettavia.
Usage:
,
Parametrit |
Kuvaus |
|---|---|
Tällä muotomäärittimellä ei ole parametreja. |
# Display a large number separated with commas
number = 1234567
robot.screen.print(f"{number:,}") # Output: 1,234,567
Percentage#
.x% muotoilee desimaaliluvut prosentteina.
Usage:
.x%
Parametrit |
Kuvaus |
|---|---|
|
Näytettävien desimaalien määrä. |
# Display a converted decimal to a percentage
value = 0.875
robot.screen.print(f"{value:.1%}") # Output: 87.5%
Hexadecimal#
.#x muuntaa luvut heksadesimaalimuotoon.
Usage:
.#x
Parametrit |
Kuvaus |
|---|---|
Tällä muotomäärittimellä ei ole parametreja. |
# Convert 255 to hexadecimal
number = 255
robot.screen.print(f"{number:#x}") # Output: 0xff
Binary#
b muuntaa luvut binääriluvuiksi (kantaluku 2).
Usage:
b
Parametrit |
Kuvaus |
|---|---|
Tällä muotomäärittimellä ei ole parametreja. |
# Convert 3 to binary
robot.screen.print(f"Binary: {3:b}") # Output: 11
Merkkijonojen yhdistäminen#
Voit yhdistää (tai ketjuttaa) merkkijonoja kahdella tavalla:
Using f-strings#
f-merkkijonojen avulla voit upottaa muuttujia suoraan merkkijonojen {} sisään.
# Display an answer based on the given emotion
emotion = "good"
robot.screen.print(f"I'm {emotion}, you?")
+ Operator#
Voit yhdistää merkkijonoja manuaalisesti käyttämällä operaattoria +.
Huomautus: Muut kuin merkkijonot täytyy ensin muuntaa merkkijonoiksi käyttämällä funktiota str().
# Display the x and y values
x = 10
y = 20
robot.screen.print("X: " + str(x) + ", Y: " + str(y))
Merkkijonomenetelmät#
Python tarjoaa sisäänrakennettuja metodeja merkkijonojen muokkaamiseen ja tarkistamiseen.
upper#
upper muuntaa kaikki merkkijonon kirjaimet isoiksi kirjaimiksi.
Usage:
upper()
Parametrit |
Kuvaus |
|---|---|
Tällä menetelmällä ei ole parametreja. |
message = "vexcode"
robot.screen.print(message.upper()) # Output: VEXCODE
lower#
lower muuntaa kaikki merkkijonon kirjaimet pieniksi kirjaimiksi.
Usage:
lower()
Parametrit |
Kuvaus |
|---|---|
Tällä menetelmällä ei ole parametreja. |
message = "VEXCODE"
robot.screen.print(message.lower()) # Output: vexcode
Alimerkkijonojen tarkistus#
in#
in on avainsana, joka palauttaa totuusarvon, joka ilmaisee, onko merkkijonossa alimerkkijono (sana tai tekstipätkä).
True– Sana on merkkijonossa.False– Sanaa ei ole merkkijonossa.
message = "Hey everyone!"
if "Hey" in message:
robot.screen.print("Hello!")
startswith#
startswith palauttaa totuusarvon, joka ilmaisee, alkaako merkkijono annetulla arvolla.
True– Sana aloittaa merkkijonon.False– Sana ei aloita merkkijonoa.
Usage:
startswith(substring)
Parametrit |
Kuvaus |
|---|---|
|
Merkkijonon alusta tarkistettava osamerkkijono. |
message = "AIM Robot"
if message.startswith("AIM"):
robot.screen.print("AIM first!")
endswith#
endswith palauttaa totuusarvon, joka ilmaisee, päättyykö merkkijono annettuun arvoon.
True– Sana lopettaa merkkijonon.False– Sana ei päätä merkkijonoa.
Usage:
endswith(substring)
Parametrit |
Kuvaus |
|---|---|
|
Merkkijonon lopusta tarkistettava osamerkkijono. |
message = "AIM Robot"
if message.endswith("Robot"):
robot.screen.print("Robot last!")
Escape-sekvenssit#
Escape-merkit ovat merkkijonojen sisällä käytettäviä erikoismerkkejä tekstitulosteen muotoiluun. Ne ovat käytettävissä vain konsolin kanssa.
New Line#
\n siirtää tekstin uudelle riville tulostettaessa.
# Display text on two lines
print("First line\nSecond line")
Tab Spacing#
\t lisää sarkainvälin sanojen tai numeroiden väliin,
# Display the quantity of barrels
quantity = 2
print("Barrels:\t", quantity)