Strängformatering#

Introduktion#

Metoden .format() i Python används för att skapa strängar som innehåller variabler, uttryck eller värden. Denna metod ersätter platshållare för klammerparenteser {} i en sträng med värden som anges inuti .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()))

Formatera tal med .format — Infoga värden och uttryck i en sträng.

  • :.xf — Anger antalet decimaler som ska visas.

  • round — Avrundar ett tal till ett givet antal decimaler.

  • :, — Lägger till kommatecken som tusentalsavgränsare.

  • :.x% — Konverterar ett decimaltal till en procentandel med x decimaler.

  • :#x — Formaterar ett tal som hexadecimalt.

  • :b — Formaterar ett tal som binärt.

Färger — Ändra textfärgen i konsolen

  • Colors — Ställ in textfärgen för konsolen.

Kombinera strängar — Kombinera text och värden.

  • .format() — Kombinera strängar och variabler i ett enda uttryck.

  • + operator — Sammanfoga strängar manuellt med valfri typkonvertering.

Strängmetoder — Ändra skiftläge i text.

  • upper() — Konverterar alla tecken till versaler.

  • lower() — Konverterar alla tecken till gemener.

Kontrollerar delsträngar — Testar textens närvaro eller position.

  • in — Kontrollerar om ett ord finns i en sträng.

  • startswith() — Kontrollerar om en sträng börjar med ett givet värde.

  • endswith() — Kontrollerar om en sträng slutar med ett givet värde.

Escape-sekvenser — Formatera utdata med specialtecken.

  • \n — Lägger till en radbrytning (ny rad).

  • \t — Lägger till ett tabbavstånd mellan objekt.

Formatera tal med .format#

.format kan användas för att styra hur tal visas, inklusive decimaler, avrundning och andra formateringsstilar som:

Fixed Decimal Places#

.xf styr hur många decimaler ett tal visas med.

Usage:
.xf

Parametrar

Beskrivning

x

Antalet decimaler som ska visas.

# Display pi with 2 decimal places
pi = 3.1415926535
brain.screen.print("Pi: {:.2f}".format(pi))
# Output: Pi: 3.14

Rounding Numbers#

round avrundar ett tal till ett visst antal decimaler före formatering.

Usage:
round(number, x)

Parametrar

Beskrivning

number

Siffran att avrunda.

x

Antalet decimaler att avrunda till.

# 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#

:, infogar kommatecken som tusentalsavgränsare för att göra stora tal mer läsbara.

Usage:
:,

Parametrar

Beskrivning

Denna formatspecifikation har inga parametrar.

# 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% formaterar decimalvärden som procenttal genom att multiplicera värdet med 100 och lägga till ett procenttecken.

Usage:
:.x%

Parametrar

Beskrivning

x

Antalet decimaler som ska visas.

# Display a converted decimal to a percentage
value = 0.875
brain.screen.print("Score: {:.1%}".format(value))
# Output: Score: 87.5%

Hexadecimal#

:#x konverterar tal till hexadecimala tal.

Usage:
:#x

Parametrar

Beskrivning

Denna formatspecifikation har inga parametrar.

# Convert 255 to hexadecimal
number = 255
brain.screen.print("Hex: {:#x}".format(number))
# Output: Hex: 0xff

Binary#

:b konverterar tal till binära tal (bas 2).

Usage:
:b

Parametrar

Beskrivning

Denna formatspecifikation har inga parametrar.

# Convert 3 to binary
brain.screen.print("Binary: {:b}".format(3))
# Output: Binary: 11

Färger#

Du kan ändra vilken färg texten ska ha när du skriver ut till utskriftskonsolen med hjälp av följande färgkoder:

  • [31m — Red

  • [32m — Green

  • [34m — Blue

  • [30m — Black

  • [37m — White

  • [33m — Yellow

  • [91m — Orange

  • [35m — Purple

  • [36m — Cyan

  • [97m — Transparent

Alla färgkoder måste följa en escape-sekvens = \033 för att fungera.

Du kan använda detta direkt i ett print -kommando med en sträng.

# Print VEXcode in Red to the Print Console
print("\033[31mVEXcode")

Du kan också använda den separat för att ställa in alla print -kommandon efteråt till den inställda färgen.

# Set the Print Console text color to Red before printing
print("\033[31m")
print("VEXcode")

Kombinera strängar#

Du kan kombinera (eller sammanfoga) strängar med två metoder:

Using .format#

Infoga värden direkt i strängen med hjälp av {}.

# Display an answer based on the given emotion
emotion = "good"
brain.screen.print("I'm {}, you?".format(emotion))

+ Operator#

Sammanfoga flera delar med hjälp av +.

Obs: Icke-strängar måste först konverteras till strängar med hjälp av str().

# Display the x and y values
x = 10
y = 20
brain.screen.print("X: " + str(x) + ", Y: " + str(y))

Strängmetoder#

Python tillhandahåller inbyggda metoder för att modifiera och kontrollera strängar.

upper#

upper konverterar alla bokstäver i en sträng till versaler.

Usage:
upper()

Parametrar

Beskrivning

Den här metoden har inga parametrar.

message = "vexcode"
brain.screen.print(message.upper())  # Output: VEXCODE

lower#

lower konverterar alla bokstäver i en sträng till gemener.

Usage:
lower()

Parametrar

Beskrivning

Den här metoden har inga parametrar.

message = "VEXCODE"
brain.screen.print(message.lower())  # Output: vexcode

Kontrollerar delsträngar#

in#

in är ett nyckelord som returnerar ett booleskt värde som anger om en delsträng (ord eller textdel) finns i en sträng.

  • True — Ordet finns i strängen.

  • False — Ordet finns inte i strängen.

message = "Hey everyone!"
if "Hey" in message:
    brain.screen.print("Hello!")

startswith#

startswith returnerar ett booleskt värde som anger om en sträng börjar med ett givet värde.

  • True — Ordet börjar strängen.

  • False — Ordet börjar inte strängen.

Usage:
startswith(substring)

Parametrar

Beskrivning

substring

Delsträngen som ska kontrolleras i början av strängen.

message = "IQ Robot"

if message.startswith("IQ"):
    brain.screen.print("IQ first!")

endswith#

endswith returnerar ett booleskt värde som anger om en sträng slutar med ett givet värde.

  • True — Ordet avslutar strängen.

  • False — Ordet avslutar inte strängen.

Usage:
endswith(substring)

Parametrar

Beskrivning

substring

Delsträngen som ska kontrolleras i slutet av strängen.

message = "IQ Robot"

if message.endswith("Robot"):
    brain.screen.print("Robot last!")

Escape-sekvenser#

Escape-sekvenser är specialtecken som används inuti strängar för att formatera textutdata. De är endast tillgängliga för användning med konsolen.

New Line#

\n flyttar text till en ny rad vid utskrift.

# Display text on two lines
print("First line\nSecond line")

Tab Spacing#

\t infogar ett tabbmellanslag mellan ord eller siffror.

# Display the quantity of blocks
quantity = 2
print("Blocks:\t", quantity)