Formato de cadena#
Introducción#
las cadenas f son la forma recomendada de formatear texto y números en Python. Permiten que las variables, expresiones y llamadas a funciones se incrusten directamente dentro de {}.
Para crear una cadena f, agregue f antes de la cadena y coloque cualquier variable, expresión o llamada a función dentro de {}.
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}”– Muestra variables, expresiones o llamadas a funciones dentro de una cadena.
Formateo de números en cadenas f: controle cómo aparecen los valores numéricos.
:.xf– Establece el número de decimales a mostrar.round– Redondea un número a un número dado de decimales.:,– Añade comas como separadores de miles.:.x%– Convierte un decimal en un porcentaje con x decimales.:#x– Formatea un número como hexadecimal.:b– Formatea un número como binario.
Combinación de cadenas: combina texto y valores.
f”{value}”– Combina cadenas y variables en una sola expresión.+ operator– Concatenar cadenas manualmente con conversión de tipo opcional.
Métodos de cadena: cambie la mayúscula del texto.
upper()– Convierte todos los caracteres en mayúsculas.lower()– Convierte todos los caracteres en minúsculas.
Verificaciones de subcadenas: prueba de presencia o posición del texto.
in– Comprueba si existe una palabra en una cadena.startswith()– Comprueba si una cadena comienza con un valor dado.endswith()– Comprueba si una cadena termina con un valor dado.
Secuencias de escape – Formato de salida con caracteres especiales.
Formatear números en cadenas f#
las cadenas f permiten un control preciso sobre los lugares decimales, el redondeo, los separadores de miles y más mediante el uso de los siguientes especificadores de formato:
Fixed Decimal Places#
.xf controla con cuántos decimales se muestra un número.
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 redondea números fuera de una cadena f o dentro del {}.
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#
, inserta comas como separadores de miles para hacer que los números grandes sean más legibles.
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% formatea los valores decimales como porcentajes.
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 convierte números a 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 convierte números a binario (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
Combinación de cadenas#
Puede combinar (o concatenar) cadenas utilizando dos enfoques:
Using f-strings#
Con f-strings, puedes incrustar variables directamente dentro de {}.
# Display an answer based on the given emotion
emotion = "good"
robot.screen.print(f"I'm {emotion}, you?")
+ Operator#
Puede combinar cadenas manualmente utilizando el operador +.
Nota: Las no cadenas deben convertirse primero en cadenas utilizando 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 verificar cadenas.
upper#
upper convierte todas las letras de una cadena en mayúsculas.
Usage:
upper()
Parámetros |
Descripción |
|---|---|
Este método no tiene parámetros. |
message = "vexcode"
robot.screen.print(message.upper()) # Output: VEXCODE
lower#
lower convierte todas las letras de una cadena en minúsculas.
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 es una palabra clave que devuelve un booleano que indica si existe una subcadena (palabra o fragmento de texto) en una cadena.
True: la palabra existe en la cadena.False: la palabra no existe en la cadena.
message = "Hey everyone!"
if "Hey" in message:
robot.screen.print("Hello!")
startswith#
startswith devuelve un booleano que indica si una cadena comienza con un valor determinado.
True: la palabra inicia la cadena.False: la palabra no inicia la cadena.
Usage:
startswith(substring)
Parámetros |
Descripción |
|---|---|
|
La subcadena a comprobar al principio de la cadena. |
message = "AIM Robot"
if message.startswith("AIM"):
robot.screen.print("AIM first!")
endswith#
endswith devuelve un booleano que indica si una cadena termina con un valor determinado.
True: la palabra termina la cadena.False: la palabra no termina la cadena.
Usage:
endswith(substring)
Parámetros |
Descripción |
|---|---|
|
La subcadena a comprobar al final 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 las cadenas para dar formato a la salida de texto. Solo están disponibles para usar con la consola.
New Line#
\n mueve el texto a una nueva línea al imprimir.
# Display text on two lines
print("First line\nSecond line")
Tab Spacing#
\t inserta un tabulador entre palabras o números,
# Display the quantity of barrels
quantity = 2
print("Barrels:\t", quantity)