Formato de cadena#
Introducción#
Las cadenas f son la forma recomendada de formatear texto y números en Python. Permiten incrustar variables, expresiones y llamadas a funciones directamente dentro de {}
.
Para crear una cadena f, agregue f
antes de la cadena y coloque cualquier variable, expresión o llamada de 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}» – 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
controla con cuántos decimales se muestra un número.
Uso:
.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 de {}
.
Uso:
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 que los números grandes sean más legibles.
Uso:,
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 valores decimales como porcentajes.
Uso:
.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 hexadecimales.
Uso:
.#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).
Uso:
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#
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: Los valores que no son cadenas primero deben convertirse en cadenas usando 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
convierte todas las letras de una cadena a mayúsculas.
Uso:
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 a minúsculas.
Uso:
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 valor booleano que indica si una palabra existe 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 valor booleano que indica si una cadena comienza con un valor dado.
True
- La palabra inicia la cadena.False
- La palabra no inicia la cadena.
Uso:
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
devuelve un valor booleano que indica si una cadena termina con un valor dado.
True
- La palabra finaliza la cadena.False
- La palabra no finaliza la cadena.
Uso:
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
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 espacio de tabulación entre palabras o números,
# Display the quantity of barrels
quantity = 2
print("Barrels:\t", quantity)