Qué es una f-string en Python
Una f-string es un texto con una f delante de las comillas que sustituye las llaves por valores.
Definición
Una f-string construye mensajes combinando texto y valores: f"Hola, {nombre}". Entre llaves puedes escribir una variable o una expresión, y Python la sustituye por su valor.
También permite dar formato a los números: {precio:.2f} muestra dos decimales. Es más legible que concatenar con +, porque no necesitas convertir los números a texto.
Ejemplo
nombre = "Ana"
edad = 20
precio = 4.5
print(f"{nombre} tiene {edad} años")
print(f"El año próximo tendrá {edad + 1}")
print(f"Total: {precio * 3:.2f} €")Al ejecutarlo, Python muestra:
Ana tiene 20 años El año próximo tendrá 21 Total: 13.50 €
Puedes copiar el ejemplo y cambiarlo en el editor Python del navegador: modificar un valor y predecir el resultado es la mejor forma de fijar el concepto.
Error frecuente
Si olvidas la f, Python muestra las llaves tal cual. Y para escribir una llave literal dentro de una f-string, duplícala: {{.
Cómo se diferencia de otros conceptos
Una f-string es una forma de construir texto, igual que concatenar con + o usar .format(), pero con las expresiones dentro del propio texto, lo que la hace más legible. No es un tipo distinto: el resultado es un string normal.
Preguntas frecuentes
¿Cómo muestro dos decimales?
Con una especificación de formato tras dos puntos: {precio:.2f}. El número se redondea solo en la presentación; el valor original no cambia.
¿Qué versión de Python necesito?
Python 3.6 o posterior. Todo el contenido de este sitio usa Python 3 moderno, así que están disponibles.
Dónde seguir
- Aprende el concepto paso a paso en la lección Transforma texto sin perder el original.
- String: definición y ejemplo
- Variable: definición y ejemplo
- Ver todos los términos del glosario