Python F-Strings: interpolación de cadenas avanzada
Aprenda a formatear cadenas en Python usando cadenas F. Evaluación de expresiones maestras, formato de precisión flotante, impresión de fecha y hora y sintaxis de autodocumentación.
Descripción general
Formatear cadenas es una tarea que los desarrolladores realizan a diario. Históricamente, el formateo de Python se basaba en el formato `%` estilo C o en el método `.format()`. Si bien eran funcionales, estos estilos de sintaxis más antiguos a menudo conducían a un código detallado y difícil de leer.Python 3.6 introdujo los literales de cadena formateados, comúnmente conocidos como cadenas F. Las cadenas F proporcionan una sintaxis concisa, legible y altamente optimizada para insertar variables y expresiones directamente en cadenas literales.
Para crear una cadena F, anteponga la cadena literal con una `f` o `F` (por ejemplo, `f"Hola {nombre}"`). Cualquier variable o expresión de Python colocada entre llaves `{...}` se evalúa en tiempo de ejecución y se convierte en una cadena automáticamente. Las cadenas F no son sólo para variables; puede llamar funciones, realizar cálculos matemáticos e incluso acceder a valores de diccionario dentro de las llaves, eliminando la necesidad de variables temporales.
Las cadenas F también cuentan con un rico lenguaje de formato. Al agregar dos puntos `:` dentro de las llaves, puede especificar reglas de formato. Por ejemplo, `{value:.2f}` redondea un flotante a dos decimales, `{num:03d}` rellena un número entero con ceros a la izquierda y `{date:%Y-%m-%d}` formatea un objeto de fecha y hora. EnPython 3.8+, F-strings introdujo la sintaxis de depuración `{variable=}`, que imprime tanto el nombre de la variable como su valor automáticamente, haciendo que la depuración sea rápida y sencilla.
Código y salida de ejecución
Demostración de formato flotante, evaluación de expresiones y depuración autodocumentada de signos iguales.
name = "Charlie"
price = 19.995
quantity = 3
# Basic interpolation and math evaluation
receipt = f"Customer: {name} | Total: ${price * quantity:.2f}"
print(receipt)
# Padding and alignment
number = 42
padded = f"ID: {number:05d}"
print(padded)
# Self-documenting debugging syntax (Python 3.8+)
value = 100
print(f"Debug output: {value=}")Customer: Charlie | Total: $59.99
ID: 00042
Debug output: value=100Implementación paso a paso
- Embellecedores resultados numéricos en informes y paneles
- Construcción de consultas SQL dinámicas o cargas útiles de solicitudes de API
- Impresión de declaraciones de depuración rápidas durante las pruebas locales
Preguntas frecuentes
¿Las cadenas F son más rápidas que otros métodos de formato de cadenas?
Sí, las cadenas F son más rápidas que el formato % y .format() porque se evalúan en tiempo de ejecución como código de bytes optimizado en lugar de analizarse durante la ejecución.
¿Cómo imprimo llaves literales en una cadena F?
Puede escapar de las llaves literales duplicándolas, por ejemplo, f"{{Hola}}" imprimirá el texto literal '{Hola}'.
Temas relacionados
Manipulación maestra de cadenas en Python. Aprenda métodos de cadenas, técnicas de corte, concatenación y formato con ejemplos de código claros y ejecutables.
Variables de Python y tipos de datos explicadosComprender las variables de Python y los tipos de datos principales (cadenas, enteros, flotantes, booleanos). Una guía completa para principiantes sobre la asignación de memoria en Python.
Python DatetimeAprenda a manejar fechas, horas, zonas horarias y cálculos en Python. Domine el formato, el análisis y la aritmética utilizando datetime y timedelta.
Recursos recomendados de Python
Amplíe sus conocimientos con tutoriales interactivos relacionados, hojas de trucos y comparaciones de códigos.
Cómo leer un archivo en Python
Aprenda a leer archivos en Python. Domine la declaración abierta, la línea de lectura, las líneas de lectura y el manejo seguro de excepciones de archivos.
Hoja de referencia de operaciones de archivos de Python
Referencia rápida para leer y escribir archivos en Python. Domina los modos abiertos, los administradores de contexto y la lectura línea por línea.
Python vs JavaScript: ¿Qué lenguaje de programación es mejor?
Una comparación completa entre Python y JavaScript. Explore las diferencias de sintaxis, el rendimiento, los casos de uso (backend frente a frontend) y ejemplos de codificación.