CodeGym /Cursos /Python SELF ES /Trabajo avanzado con la función print()

Trabajo avanzado con la función print()

Python SELF ES
Nivel 4 , Lección 4
Disponible

10.1 format()

A menudo necesitamos mostrar muchos datos en la consola (en pantalla). No somos los primeros en enfrentarnos a esto, por lo que en Python ya existe la función format(), que permite unir cadenas y mostrar datos en pantalla de una manera más simple y clara.

La función format() se utiliza para insertar valores en una cadena en posiciones específicas. La sintaxis de la función es la siguiente:


"Plantilla de cadena desde {} hasta {}".format(valor1, valor2,…)

Hecho 1. La función format() es una función hija de string, por lo que se llama desde una cadena. En lugar de pasar la cadena a una función, escribimos la cadena, luego un punto, y luego llamamos a la función format() pasándole sus parámetros.

Hecho 2. La función format() rellena la cadena plantilla con los valores pasados. Convierte los valores pasados a cadenas (si había números, por ejemplo) y los inserta en los lugares designados por los símbolos {}. Tal lugar para insertar un valor se llama placeholder.

Uso básico:


welcome_message = "Hola, {}, ¡bienvenido a {}!"
print(welcome_message.format("Anna", "nuestra tienda"))               
        

Resultado: "Hola, Anna, ¡bienvenido a nuestra tienda!"

Formateo de números:


output = "Datos: {0:.2f} y {1:.2f}".format(3.1415926, 2.71828)
print(output)              
        

Resultado: "Datos: 3.14 y 2.72" — demostración de la limitación de salida a dos decimales.

Uso de palabras clave:


output = "{name} trabaja en {company}"
print(output.format(name="Sergey", company="Google"))
        

Resultado: "Sergey trabaja en Google"

El uso de format() mejora la legibilidad y mantenibilidad del código, permitiendo cambiar fácilmente el formato sin necesidad de editar toda la cadena.

10.2 f-strings

Desde la versión 3.6 de Python, apareció un nuevo tipo de cadenas — f-strings, que literalmente significan "formatted string". Estas cadenas mejoran la legibilidad del código y también funcionan más rápido que otras formas de formateo.

Para usar f-strings, se coloca la letra "f" o "F" antes de la cadena. Las expresiones para insertar se colocan entre llaves {}:

Ejemplo:


force = "Lado Oscuro"
message = f"¡Que la fuerza {force} te acompañe!"
print(message)  # Resultado: ¡Que la fuerza Lado Oscuro te acompañe! 
        

¡Importante! Entre las llaves se pueden indicar variables, que estén disponibles en el ámbito actual (de eso hablaremos más tarde) y Python las convertirá automáticamente en cadena e insertará en el lugar correcto.

Ejemplo:


age = 28
message = f"Tengo {age} años"
print(message)  # Resultado: Tengo 28 años               
        

Además, en las llaves es posible usar expresiones con un montón de variables.

Ejemplo:


birth_year = 1985
current_year = 2024
message = f"Tengo {current_year - birth_year} años"
print(message)  # Resultado: Tengo 39 años
        

Bajo el capó, todo esto se convierte en una llamada a la función format(), pero el nuevo enfoque es realmente más conveniente.

Disfruta utilizándolo.

10.3 Parámetros sep y end

En Python la función print() proporciona dos parámetros útiles — sep y end, que permiten controlar la salida de datos. Estos parámetros hacen que la función print() sea más flexible y pueden ser utilizados para formatear la salida sin necesidad de funciones adicionales o operaciones complejas de cadenas.

El parámetro sep define el símbolo o cadena que se utilizará para separar varios valores pasados a print(). Por defecto, sep está configurado como un espacio. Esto significa que si pasas varios argumentos a print(), estarán separados por un espacio.

Pero si deseas que los datos estén separados por algo distinto a un espacio, como por ejemplo una coma, entonces necesitas al final añadir el parámetro sep y asignarle una nueva cadena separadora.

Ejemplo:


            print("Hello", "world")  # Resultado: Hello world 
            print("Hello", "world", sep=", ")  # Resultado: Hello, world
        

O puedes, por ejemplo, hacer que cada valor se imprima en una nueva línea. Entonces al parámetro sep debes asignarle el carácter especial de salto de línea — representado por el par de símbolos “\n”.

Ejemplo Explicación

print(1, 2, 3, 4, 5, sep=",\n")  

El bucle imprimirá en pantalla los números
1,
2,
3,
4,
5
            

El parámetro end define lo que se imprimirá después de todos los valores pasados. El valor por defecto de end es el caracter de nueva línea (\n), lo que significa que hará un salto de línea después de ejecutar print().

Al cambiar end, puedes controlar cómo se muestran los datos, por ejemplo, para continuar la impresión en la misma línea:

Ejemplo:


            print("Hello", end=" ")
            print("world")  # Resultado: Hello world               
        

El uso de sep y end puede ser extremadamente útil en escenarios donde se requiere un formateo particular de la salida, como al crear tablas, informes o al mostrar datos en una única línea sin saltos automáticos a la nueva línea.

Además de simplificar el código y eliminar la necesidad de añadir manualmente separadores o controlar manualmente los saltos de línea, el uso de sep y end mejora la legibilidad y mantenibilidad del código.

Comentarios
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION