¿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 porcentajeb
→ 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