Domina el uso de .format() en Python: Guía Completa con Ejemplos

¿Qué es el método .format() en Python?

El método .format() es una herramienta poderosa y flexible que permite formatear cadenas de texto insertando variables o valores dinámicos dentro de ellas. Se introdujo oficialmente en Python 2.6 y sigue siendo ampliamente utilizado por su claridad y versatilidad.

Sintaxis Básica

La sintaxis básica de .format() es:

"cadena con {} placeholders".format(valores)
  • {}: Son los placeholders donde se insertarán los valores.
  • valores: Los datos que se insertan en el orden indicado.

Ejemplo Básico

nombre = "María"
edad = 30

mensaje = "Mi nombre es {} y tengo {} años.".format(nombre, edad)
print(mensaje)

Salida:

Mi nombre es María y tengo 30 años.

Uso de Índices

Puedes usar índices dentro de los {} para reutilizar o cambiar el orden de los valores:

mensaje = "Nombre: {0}, Apellido: {1}, Nombre otra vez: {0}".format("Luis", "Pérez")
print(mensaje)

Salida:

Nombre: Luis, Apellido: Pérez, Nombre otra vez: Luis

Asignación por Nombres

También puedes usar nombres de clave-valor para mejorar la legibilidad:

mensaje = "Nombre: {nom}, Edad: {ed}".format(nom="Carlos", ed=28)
print(mensaje)

Salida:

Nombre: Carlos, Edad: 28

Formateo Numérico

Con .format() también puedes controlar cómo se muestran los números:

  • .2f → Mostrar dos decimales
  • .2% → Formato de porcentaje
  • b → Convertir a binario
precio = 49.99123
print("Precio final: {:.2f} euros".format(precio))

Salida:

Precio final: 49.99 euros

Alineación y Relleno de Texto

Es posible alinear texto y rellenar espacios vacíos:

nombre = "Ana"
print("Nombre: {:>10}".format(nombre))  # Alinear a la derecha
print("Nombre: {:*^20}".format("Texto centrado"))  # Centrar con relleno

Salida:

Nombre:        Ana
Nombre: ****Texto centrado****

Ventajas de .format()

  • Legible: Más claro que concatenar con +.
  • Flexible: Permite usar índices, nombres y formateo avanzado.
  • Compatible: Funciona desde Python 2.6 hasta las últimas versiones.
  • Controlado: Ideal para formatear números, fechas, alineaciones, etc.

Comparativa con Otros Métodos

Método Ejemplo
f-string f"{nombre} tiene {edad} años"
.format() "{n} tiene {e} años".format(n=nombre, e=edad)
Concatenación nombre + " tiene " + str(edad) + " años"

Conclusión

El método .format() es una excelente opción cuando necesitas un mayor control sobre el formateo de cadenas en Python. Aunque hoy en día muchos prefieren los f-strings por su simplicidad, .format() sigue siendo muy útil, especialmente en proyectos antiguos o cuando se requiere compatibilidad con versiones anteriores de Python.

Si deseas dominar Python, aprender a usar .format() es un paso fundamental.

¿Te gustaría seguir aprendiendo?

¡Suscríbete a nuestro boletín o déjanos tus comentarios para más tutoriales sobre Python y desarrollo web!

No hay comentarios:

Publicar un comentario