Resumen

Domina los FStrings con confianza: aprende a aplicar modificadores de formato para números, texto y fechas con ejemplos claros. Verás cómo usar separador de miles, controlar decimales con redondeo, agregar ceros a la izquierda, alinear columnas para tablas con pipeline y dar formato legible a fechas, además de aprovecharlos para debugging más rápido.

¿Cómo dar formato a números con FStrings?

Los modificadores de formato se aplican tras los dos puntos. Esto permite generar salidas más legibles para personas, como separar miles con coma, limitar decimales con redondeo y rellenar con ceros a la izquierda.

¿Cómo aplicar separador de miles?

  • Usa la coma para miles: más legible para valores grandes.
  • Inserta el modificador tras el valor: dos puntos y coma.
bank_balance = 1234567890
texto = f"Tu saldo en la cuenta bancaria es {bank_balance:,}."
print(texto)
# Tu saldo en la cuenta bancaria es 1,234,567,890.

¿Cómo controlar decimales y redondeo?

  • Limita decimales con f: redondea automáticamente.
  • Cambia la precisión: .1f, .2f, etc.
stock_price = 1.405
texto = f"El valor del stock es {stock_price:.1f}."
print(texto)
# El valor del stock es 1.4.

texto2 = f"El valor del stock es {stock_price:.2f}."
print(texto2)
# El valor del stock es 1.41.

¿Cómo agregar ceros a la izquierda?

  • Define el ancho mínimo con ceros: 03, 04, etc.
  • Indicado para IDs y códigos fijos.
user_id = 1
texto = f"Su ID es {user_id:03d}."
print(texto)
# Su ID es 001.

user_id = 100
texto = f"Su ID es {user_id:04d}."
print(texto)
# Su ID es 0100.

¿Cómo alinear texto y crear tablas legibles?

Los FStrings permiten alinear valores con un ancho fijo, ideal para tablas simples con pipeline y sumarios más claros. Puedes alinear a la izquierda o a la derecha cambiando el indicador de alineación.

¿Cómo alinear columnas con anchura fija?

  • Especifica ancho tras los dos puntos: 15, 10, etc.
  • Alinea texto a la izquierda o números a la derecha para facilitar lectura.
product = "laptop"
price = 1000
print(f"producto | precio")
print(f"{product:<15} | {price:>10,}")
# producto       |      1,000

¿Cómo concatenar filas con un salto de línea?

  • Usa el backslash n para un retorno de línea: \n.
  • Duplica líneas con el mismo formato para simular una tabla.
product = "laptop"
price = 1000
linea = f"{product:<15} | {price:>10,}"
tabla = f"producto         | precio\n{linea}\n{linea}"
print(tabla)

¿Cómo formatear fechas y mejorar el debugging?

Una fecha en su forma por defecto sale en formato ISO. Con modificadores, puedes mostrar día, número, mes, año y hora en una versión más legible. Además, los FStrings permiten imprimir variables y mensajes para encontrar errores más rápido.

¿Cómo mostrar una fecha completa legible?

  • Crea la fecha con datetime: año, mes, día y hora.
  • Aplica códigos de formato para nombre del día, día, mes, año y hora.
from datetime import datetime
fecha = datetime(2024, 12, 5, 10, 10)
print(f"La fecha completa es {fecha}.")  # formato ISO por defecto

formato = f"La fecha completa es {fecha:%A, %d de %B del %Y a las %I y %M %p}."
print(formato)
# La fecha completa es jueves, 05 de diciembre del 2024 a las 10 y 10 A.M.

¿Cómo usar FStrings para debugging rápido?

  • Inserta variables directamente en el mensaje: más contexto.
  • Combina texto y valores calculados en una sola línea.
  • Útil para verificar estados y entradas del usuario.
user = "ana"
items = ["A", "B", "C"]
print(f"debug: usuario={user}, total_items={len(items)}, items={items}")

¿Te animas al reto final? Comparte en comentarios tu solución en una sola línea para formatear un porcentaje o un número científico con FStrings, y cuéntanos tu caso de uso favorito.