Formato de cadena#

Introducción#

La forma recomendada de formatear texto y números en Python es con cadenas f. 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
controller.screen.print(f"Position: ({x}, {y})")

# Display a calculation with an f-string
controller.screen.print(f"Sum: {5 + 3}")

# Display the robot's battery capacity with an f-string
controller.screen.print(f"Battery: {controller.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.

  • + operador – 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.

Comprobaciones 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 determinado.

  • endswith – Comprueba si una cadena termina con un valor determinado.

Secuencias de escape – Formato de salida con caracteres especiales.

  • \n – Añade un salto de línea (nueva línea).

  • \t – Agrega un espacio de pestaña entre los elementos.

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

x

La cantidad de decimales a mostrar.

# Display pi with 2 decimal places
pi = 3.1415926535
controller.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

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
controller.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
controller.screen.print(f"{number:,}")

# Output: 1,234,567

Percentage#

.x% formatea los valores decimales como porcentajes.

Usage:
.x%

Parámetros

Descripción

x

La cantidad de decimales a mostrar.

# Display a converted decimal to a percentage
value = 0.875

controller.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

controller.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
controller.screen.print(f"Binary: {3:b}")

# Output: Binary: 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"

controller.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

controller.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.

# Display a message in uppercase
message = "vexcode"

controller.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.

# Display a message in lowercase
message = "VEXCODE"

controller.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.

# Display a message if "Hey" is in the string
message = "Hey everyone!"

if "Hey" in message:
    controller.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

substring

La subcadena a comprobar al principio de la cadena.

# Display a message if the string starts with "AIR"
message = "AIR Drone"

if message.startswith("AIR"):
    controller.screen.print("AIR 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

substring

La subcadena a comprobar al final de la cadena.

# Display a message if the string ends with "Drone"
message = "AIR Drone"

if message.endswith("Drone"):
    controller.screen.print("Drone 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("IDs:\t", quantity)