Python

Inclusión de valores y variables en las f-strings de Python

Las f-strings, o formatted string literals, son una característica introducida en Python 3.6 con la que se simplifica la tarea de dar formato a las cadenas de texto. Facilitando interpolar variables y expresiones dentro de las cadenas de texto. Sin embargo, ¿sabías que las f-strings tienen una función especial que permite incluir tanto el nombre de la variable como su valor en la cadena resultante? En esta entrada se explicará cómo con esta característica particular se puede incluir tanto los valores como las variables en las f-strings de Python.

Uso del signo igual (=) para la inclusión de valores y variables en las f-strings de Python

La funcionalidad de las f-strings que se va a analizar es bastante simple al mismo tiempo que de gran utilidad. Al agregar el signo igual (=) después de una variable dentro de una f-string no solo se incluye el valor de la variable, sino que además se incluye el nombre de esta en la cadena resultante. Veamos un ejemplo básico, simplemente se puede imprimir el nombre que contiene una variable como se hace normalmente y con el signo igual después de la variable.

nombre = "Alice"

print(f'El nombre es {nombre}')
print(f'El nombre es {nombre=}')
El nombre es Alice
El nombre es nombre='Alice'

En el ejemplo se puede ver que al introducir el signo igual después de la variable no solo aparece el contenido, sino que también el nombre de la variable. Cambiando la cadena de texto resultante.

Uso en expresiones aritméticas

Un caso de uso que puede ser bastante interesante de esta funcionalidad se da cuando se realizan operaciones aritméticas dentro de las f-strings. Al usar el signo igual no solo se puede mostrar el resultado, sino que también la propia operación. Esto es lo que se muestra en el siguiente ejemplo.

x = 5
y = 7

print(f'La suma de {x=} y {y=} es {x + y=}')
La suma de x=5 y y=7 es x + y=12

Como se puede ver en el ejemplo, la cadena de texto resultante contiene tanto la operación que se ha realizado como el propio resultado de esta. Haciendo explícito para el usuario la operación.

Inclusión de funciones en las f-strings

En las f-strings no solo se pueden incluir operaciones, sino que también funciones. Por ejemplo, se puede usar para ver la longitud de una cadena de texto de una forma sencilla.

mensaje = "Hola mundo"

print(f'{mensaje=} con {len(mensaje)=} caracteres')
mensaje='Hola mundo' con len(mensaje)=10 caracteres

Al igual que en el caso de las expresiones aritméticas, la cadena de texto resultante en este ejemplo también hace explícito la operación con la que se obtiene el resultado indicado.

Conclusiones

Esta característica de las f-strings puede ser extremadamente útil para la depuración de código. Situación en la que es necesario conocer tanto el nombre como el valor de la variable durante la ejecución del programa. Agregar un signo igual después de la variable que se interpola no solo mostrará el valor, sino que también el nombre de esta. Otro caso en que esta característica puede ser de gran utilidad es para la generación de mensajes de registro detallados.

Utilizando esta funcionalidad de las f-strings de Python se puede facilitar la claridad y expresividad del código, haciendo más sencillos los procesos de desarrollo y depuración.

Imagen de Pexels en Pixabay

¿Te ha parecido de utilidad el contenido?

Daniel Rodríguez

Share
Published by
Daniel Rodríguez

Recent Posts

Cómo Detectar Pseudo-IDs y Data Leakage en el Constructor de Scorecards

El artículo Data Leakage en Credit Scoring explicó por qué este es el error más…

17 horas ago

Cómo Verificar la Normalidad de tus Datos antes de un Test Estadístico

Antes de aplicar muchos tests estadísticos clásicos (el t-test, el ANOVA, la regresión lineal) aparece…

6 días ago

Docker Compose: el día a día. Cómo ver qué funciona y qué no

Si acabas de montar tu aplicación en Docker Compose, la primera pregunta que haces cada…

1 semana ago

Migrar tslane a un paquete dual CommonJS y ESM con tsup y Vitest

tslane es la plantilla que uso como punto de partida para mis librerías TypeScript, nacida…

2 semanas ago

Cómo construir tu primer scorecard paso a paso

En los artículos anteriores de esta serie vimos la teoría detrás del credit scoring: qué…

2 semanas ago

Actualizar expresslanets a ES Modules con tsx y Vitest

expresslanets es la plantilla de API REST con Express y TypeScript que empezó como una…

3 semanas ago

This website uses cookies.