Formato de cadena#

Introducción#

El método .format() en Python se utiliza para crear cadenas que incluyen variables, expresiones o valores. Este método reemplaza las llaves {} en una cadena con los valores proporcionados dentro de .format().

def main():
    x = 1
    y = 5

    # Display the variables using .format()
    console.print("Position: ({}, {})".format(x, y))

# Start threads — Do not delete
start_thread(main)

def main():
    # Display a calculation using .format()
    console.print("Sum: {}".format(5 + 3))

# Start threads — Do not delete
start_thread(main)

def main():
    wait(1, SECONDS)
    # Display the time using .format()
    console.print("Time: {}".format(timer.time(SECONDS)))

# Start threads — Do not delete
start_thread(main)

Formatear números con .format – Insertar valores y expresiones en una cadena.

  • :.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.

  • .format() – 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.

Comprobación 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: formatear la salida con caracteres especiales.

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

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

Formatear números con .format#

.format se puede utilizar para controlar cómo aparecen los números, incluidos los decimales, el redondeo y otros estilos de formato como:

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.

def main():
    # Display pi with 2 decimal places
    pi = 3.1415926535
    console.print("Pi: {:.2f}".format(pi))
    # Output: Pi: 3.14

# Start threads — Do not delete
start_thread(main)

Rounding Numbers#

round redondea un número a una cantidad específica de decimales antes de formatearlo.

Uso:
round(number, x)

Parámetros

Descripción

number

El número a redondear.

x

La cantidad de decimales a redondear.

def main():
    # Display a value rounded to only 2 decimal places
    value = 5.6789
    console.print("Rounded: {}".format(round(value, 2)))
    # Output: Rounded: 5.68

# Start threads — Do not delete
start_thread(main)

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.

def main():
    # Display a large number separated with commas
    number = 1234567
    console.print("Formatted: ")
    console.new_line()
    console.print("{:,}".format(number))
    # Output: Formatted: 1,234,567

# Start threads — Do not delete
start_thread(main)

Percentage#

:.x% formatea valores decimales como porcentajes.

Uso:
:.x%

Parámetros

Descripción

x

La cantidad de decimales a mostrar.

def main():
    # Display a converted decimal to a percentage
    value = 0.875
    console.print("Score: {:.1%}".format(value))
    # Output: Score: 87.5%

# Start threads — Do not delete
start_thread(main)

Hexadecimal#

:#x convierte números a hexadecimales.

Uso:
:#x

Parámetros

Descripción

Este especificador de formato no tiene parámetros.

def main():
    # Convert 255 to hexadecimal
    number = 255
    console.print("Hex: {:#x}".format(number))
    # Output: Hex: 0xff

# Start threads — Do not delete
start_thread(main)

Binary#

:b convierte números a binario (base 2).

Uso:
:b

Parámetros

Descripción

Este especificador de formato no tiene parámetros.

def main():
    # Convert 3 to binary
    console.print("Binary: {:b}".format(3))
    # Output: Binary: 11

# Start threads — Do not delete
start_thread(main)

Combinando cadenas#

Puede combinar (o concatenar) cadenas utilizando dos enfoques:

Using .format#

Inserte valores directamente en la cadena usando {}.

def main():
    # Display an answer based on the given emotion
    emotion = "good"
    console.print("I'm {}, you?".format(emotion))

# Start threads — Do not delete
start_thread(main)

+ Operator#

Unir varias partes utilizando +.

Nota: Los valores que no son cadenas primero deben convertirse en cadenas usando str().

def main():
    # Display the x and y values
    x = 10
    y = 20
    console.print("X: " + str(x) + ", Y: " + str(y))

# Start threads — Do not delete
start_thread(main)

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.

def main():
    # Capitalize a string with .upper()
    message = "vexcode"
    console.print(message.upper())  # Output: VEXCODE

# Start threads — Do not delete
start_thread(main)

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.

def main():
    # Make a string lowercase with .lower()
    message = "VEXCODE"
    console.print(message.lower())  # Output: vexcode

# Start threads — Do not delete
start_thread(main)

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.

def main():
    message = "Hey everyone!"
    if "Hey" in message:
        console.print("Hello!")

# Start threads — Do not delete
start_thread(main)

startswith#

startswith devuelve un valor booleano que indica si una cadena comienza con un valor determinado.

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

def main():
    # Check for 'GO' at the start of a string
    message = "GO Robot"

    if message.startswith("GO"):
        console.print("GO first!")

# Start threads — Do not delete
start_thread(main)

endswith#

endswith devuelve un valor booleano que indica si una cadena termina con un valor determinado.

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

def main():
    # Check for `Robot` at the end of a string
    message = "GO Robot"

    if message.endswith("Robot"):
        console.print("Robot last!")

# Start threads — Do not delete
start_thread(main)

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.

New Line#

\n mueve el texto a una nueva línea al imprimir.

def main():
    # Display text on two lines
    console.print("First line\nSecond line")

# Start threads — Do not delete
start_thread(main)

Tab Spacing#

\t inserta un espacio de tabulación entre palabras o números,

def main():
    # Display the quantity of disks
    quantity = 2
    console.print("Disks:\t", quantity)

# Start threads — Do not delete
start_thread(main)