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}" – Muestra variables, expresiones o llamadas de funciones dentro de una cadena.

Formato de números en cadenas f: controla cómo aparecen los valores numéricos.

  • :.xf – Establece la cantidad de decimales a mostrar.

  • round – Redondea un número a una cantidad determinada de decimales.

  • :, – Agrega 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.

  • Operador + – Concatena cadenas manualmente con conversión de tipo opcional.

Métodos de cadena: cambian el caso del texto.

  • upper() – Convierte todos los caracteres a mayúsculas.

  • lower() – Convierte todos los caracteres a minúsculas.

Comprobaciones de subcadenas: prueba la 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: formatea la salida con caracteres especiales.

  • \n – Agrega un salto de línea (nueva línea).

  • \t – Agrega un espacio de tabulación entre elementos.

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

x

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

number

El número a redondear.

x

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

x

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

substring

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

substring

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)