Formatowanie ciągu znaków#

Wstęp#

Metoda .format() w Pythonie służy do tworzenia ciągów zawierających zmienne, wyrażenia lub wartości. Ta metoda zastępuje symbole zastępcze w nawiasach klamrowych {} w ciągu wartościami podanymi w .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()))

Formatowanie liczb przy użyciu .format — wstawianie wartości i wyrażeń do ciągu.

  • :.xf — Ustawia liczbę miejsc dziesiętnych do wyświetlenia.

  • round — Zaokrągla liczbę do podanej liczby miejsc dziesiętnych.

  • :, — Dodaje przecinki jako separatory tysięcy.

  • :.x% — Konwertuje liczbę dziesiętną na wartość procentową z x miejscami dziesiętnymi.

  • :#x — Formatuje liczbę do postaci szesnastkowej.

  • :b — Formatuje liczbę jako binarną.

Kolory — Zmień kolor tekstu w konsoli

  • Colors — Ustaw kolor tekstu konsoli.

Łączenie ciągów — łączenie tekstu i wartości.

  • .format() — Połącz ciągi znaków i zmienne w jednym wyrażeniu.

  • + operator — Łączenie ciągów ręcznie z opcjonalną konwersją typu.

Metody String — zmiana wielkości liter tekstu.

  • upper() — Zamienia wszystkie znaki na wielkie litery.

  • lower() — Zamienia wszystkie znaki na małe litery.

Sprawdzanie podciągów — test obecności i położenia tekstu.

  • in — Sprawdza, czy słowo istnieje w ciągu.

  • startswith() — Sprawdza, czy ciąg zaczyna się od podanej wartości.

  • endswith() — Sprawdza, czy ciąg kończy się podaną wartością.

Sekwencje wyjścia — formatowanie wyników przy użyciu znaków specjalnych.

  • \n — Dodaje podział wiersza (nowy wiersz).

  • \t — Dodaje tabulator między elementami.

Formatowanie liczb z .format#

.format można wykorzystać do kontrolowania sposobu wyświetlania liczb, w tym miejsc dziesiętnych, zaokrąglania i innych stylów formatowania, takich jak:

Fixed Decimal Places#

.xf kontroluje liczbę miejsc dziesiętnych wyświetlaną w danej liczbie.

Usage:
.xf

Parametry

Opis

x

Liczba miejsc dziesiętnych do wyświetlenia.

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

Rounding Numbers#

round zaokrągla liczbę do określonej liczby miejsc dziesiętnych przed formatowaniem.

Usage:
round(number, x)

Parametry

Opis

number

Liczba do zaokrąglenia.

x

Liczba miejsc dziesiętnych, do których należy zaokrąglić.

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

:, wstawia przecinki jako separatory tysięcy, dzięki czemu duże liczby są bardziej czytelne.

Usage:
:,

Parametry

Opis

Ten specyfikator formatu nie ma żadnych parametrów.

# 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% formatuje wartości dziesiętne jako procenty poprzez pomnożenie wartości przez 100 i dodanie znaku procentu.

Usage:
:.x%

Parametry

Opis

x

Liczba miejsc dziesiętnych do wyświetlenia.

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

Hexadecimal#

:#x konwertuje liczby na system szesnastkowy.

Usage:
:#x

Parametry

Opis

Ten specyfikator formatu nie ma żadnych parametrów.

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

Binary#

:b konwertuje liczby na system binarny (podstawa 2).

Usage:
:b

Parametry

Opis

Ten specyfikator formatu nie ma żadnych parametrów.

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

Zabarwienie#

Możesz zmienić kolor tekstu, który będzie wyświetlany podczas drukowania w Konsoli drukowania, korzystając z następujących kodów kolorów:

  • [31m — Red

  • [32m — Green

  • [34m — Blue

  • [30m — Black

  • [37m — White

  • [33m — Yellow

  • [91m — Orange

  • [35m — Purple

  • [36m — Cyan

  • [97m — Transparent

Aby kody kolorów działały, muszą następować po sekwencji wyjścia = \033.

Można użyć tego bezpośrednio w poleceniu print z ciągiem znaków.

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

Można go również używać samodzielnie, aby ustawić wszystkie polecenia drukowania print na ustawiony kolor.

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

Łączenie strun#

Można łączyć (lub konkatenować) ciągi znaków, stosując dwa podejścia:

Using .format#

Wstaw wartości bezpośrednio do ciągu za pomocą {}.

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

+ Operator#

Połącz wiele części za pomocą +.

Uwaga: Elementy niebędące ciągami znaków muszą zostać najpierw przekonwertowane na ciągi znaków za pomocą str().

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

Metody ciągów#

Python udostępnia wbudowane metody modyfikacji i sprawdzania ciągów znaków.

upper#

upper zamienia wszystkie litery w ciągu na wielkie.

Usage:
upper()

Parametry

Opis

Ta metoda nie ma żadnych parametrów.

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

lower#

lower zamienia wszystkie litery w ciągu na małe.

Usage:
lower()

Parametry

Opis

Ta metoda nie ma żadnych parametrów.

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

Sprawdzanie podciągów#

in#

in to słowo kluczowe, które zwraca wartość logiczną wskazującą, czy w ciągu występuje podciąg (słowo lub fragment tekstu).

  • True — Słowo istnieje w ciągu.

  • False — Słowo nie istnieje w ciągu.

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

startswith#

startswith zwraca wartość logiczną wskazującą, czy ciąg znaków zaczyna się od podanej wartości.

  • True — Słowo rozpoczyna ciąg.

  • False — Słowo nie rozpoczyna ciągu.

Usage:
startswith(substring)

Parametry

Opis

substring

Podciąg, który należy sprawdzić na początku ciągu.

message = "IQ Robot"

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

endswith#

endswith zwraca wartość logiczną wskazującą, czy ciąg znaków kończy się podaną wartością.

  • True — Słowo kończy ciąg.

  • False — Słowo nie kończy ciągu.

Usage:
endswith(substring)

Parametry

Opis

substring

Podciąg, który należy sprawdzić na końcu ciągu.

message = "IQ Robot"

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

Sekwencje ucieczki#

Sekwencje ucieczki to znaki specjalne używane wewnątrz ciągów znaków do formatowania tekstu wyjściowego. Są one dostępne tylko do użycia z konsolą.

New Line#

\n przenosi tekst do nowego wiersza podczas drukowania.

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

Tab Spacing#

\t wstawia tabulator pomiędzy wyrazami lub liczbami.

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