Formato de cadena#
Introducción#
f-strings are the recommended way to format text and numbers in Python. They allow variables, expressions, and function calls to be embedded directly inside {}.
To create an f-string, add f before the string, and place any variable, expression, or function call inside {}.
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-Strings – Incrusta variables y expresiones directamente en el texto.
f”{value}”– Displays variables, expressions, or function calls inside a string.
Formato de números en cadenas f: controla cómo aparecen los valores numéricos.
:.xf– Sets the number of decimal places to show.round– Rounds a number to a given number of decimal places.:,– Adds commas as thousands separators.:.x%– Converts a decimal to a percentage with x decimal places.:#x– Formats a number as hexadecimal.:b– Formats a number as binary.
Combinación de cadenas: combina texto y valores.
f”{value}”– Combine strings and variables in a single expression.+ operator– Concatenate strings manually with optional type conversion.
Métodos de cadena: cambian el caso del texto.
Comprobaciones de subcadenas: prueba la presencia o posición del texto.
in– Checks if a word exists in a string.startswith()– Checks if a string begins with a given value.endswith()– Checks if a string ends with a given value.
Secuencias de escape: formatea la salida con caracteres especiales.
Formato de números en cadenas f#
Las cadenas f permiten un control preciso sobre los decimales, el redondeo, los separadores de miles y más mediante el uso de los siguientes especificadores de formato:
Fixed Decimal Places#
.xf controls how many decimal places a number is displayed with.
Usage:
.xf
Parámetros |
Descripción |
|---|---|
|
La cantidad de decimales a mostrar. |
# Display pi with 2 decimal places
pi = 3.1415926535
robot.screen.print(f"Pi: {pi:.2f}") # Output: Pi: 3.14
Rounding Numbers#
round rounds numbers outside of an f-string or inside of the {}.
Usage:
round(number, x)
Parámetros |
Descripción |
|---|---|
|
El número a redondear. |
|
La cantidad de decimales a redondear. |
# Display a value rounded to only 2 decimal places
value = 5.6789
robot.screen.print(f"{round(value, 2)}") # Output: 5.68
Thousands Separator#
, inserts commas as thousands separators to make large numbers more readable.
Usage:
,
Parámetros |
Descripción |
|---|---|
Este especificador de formato no tiene parámetros. |
# Display a large number separated with commas
number = 1234567
robot.screen.print(f"{number:,}") # Output: 1,234,567
Percentage#
.x% formats decimal values as percentages.
Usage:
.x%
Parámetros |
Descripción |
|---|---|
|
La cantidad de decimales a mostrar. |
# Display a converted decimal to a percentage
value = 0.875
robot.screen.print(f"{value:.1%}") # Output: 87.5%
Hexadecimal#
.#x converts numbers to hexadecimal.
Usage:
.#x
Parámetros |
Descripción |
|---|---|
Este especificador de formato no tiene parámetros. |
# Convert 255 to hexadecimal
number = 255
robot.screen.print(f"{number:#x}") # Output: 0xff
Binary#
b converts numbers to binary (base 2).
Usage:
b
Parámetros |
Descripción |
|---|---|
Este especificador de formato no tiene parámetros. |
# Convert 3 to binary
robot.screen.print(f"Binary: {3:b}") # Output: 11
Combinando cadenas#
Puede combinar (o concatenar) cadenas utilizando dos enfoques:
Using f-strings#
With f-strings, you can embed variables directly inside {}.
# Display an answer based on the given emotion
emotion = "good"
robot.screen.print(f"I'm {emotion}, you?")
+ Operator#
You can combine strings manually using the + operator.
Note: Non-strings must first be converted to strings using str().
# Display the x and y values
x = 10
y = 20
robot.screen.print("X: " + str(x) + ", Y: " + str(y))
Métodos de cadena#
Python proporciona métodos integrados para modificar y comprobar cadenas.
upper#
upper converts all letters in a string to uppercase.
Usage:
upper()
Parámetros |
Descripción |
|---|---|
Este método no tiene parámetros. |
message = "vexcode"
robot.screen.print(message.upper()) # Output: VEXCODE
lower#
lower converts all letters in a string to lowercase.
Usage:
lower()
Parámetros |
Descripción |
|---|---|
Este método no tiene parámetros. |
message = "VEXCODE"
robot.screen.print(message.lower()) # Output: vexcode
Comprobación de subcadenas#
in#
in is a keyword that returns a Boolean indicating whether a word exists in a string.
True- The word exists in the string.False- The word does not exist in the string.
message = "Hey everyone!"
if "Hey" in message:
robot.screen.print("Hello!")
startswith#
startswith returns a Boolean indicating whether a string begins with a given value.
True- The word starts the string.False- The word does not start the string.
Usage:
startswith(substring)
Parámetros |
Descripción |
|---|---|
|
La subcadena a comprobar dentro de la cadena. |
message = "AIM Robot"
if message.startswith("AIM"):
robot.screen.print("AIM first!")
endswith#
endswith returns a Boolean indicating whether a string ends with a given value.
True- The word ends the string.False- The word does not end the string.
Usage:
startswith(substring)
Parámetros |
Descripción |
|---|---|
|
La subcadena a comprobar dentro de la cadena. |
message = "AIM Robot"
if message.endswith("Robot"):
robot.screen.print("Robot last!")
Secuencias de escape#
Las secuencias de escape son caracteres especiales que se utilizan dentro de cadenas para dar formato al texto de salida. Solo están disponibles para su uso con la consola.
New Line#
\n moves text to a new line when printing.
# Display text on two lines
print("First line\nSecond line")
Tab Spacing#
\t inserts a tab space between words or numbers,
# Display the quantity of barrels
quantity = 2
print("Barrels:\t", quantity)