Foros Python

Versión completa: Error con string-f al querer utilizar valor de una variable [python]
Actualmente estas viendo una versión simplificada de nuestro contenido. Ver la versión completa con el formato correcto.
Hola, gente ¿cómo están?
Con las 3 líneas de código que pongo a continuación seguramente se darán cuenta de lo que quiero
lograr, hay un >7  un <15 y un <27 necesito reemplazar el 15 por el valor de la variable longitud para
que precio se adapte al ancho de Producto pero me da un error:


Cita:Traceback (most recent call last):
  File "actual.py", line 3, in <module>
    print(f'\n {cabecera[0]:>7}',f' {cabecera[1]:<longitud} ',f'{cabecera[2]:<27}')
ValueError: Invalid format specifier


Código:
cabecera = ['Código', 'Producto', 'Precio']
longitud = len(cabecera[1])
print(f'\n {cabecera[0]:>7}',f' {cabecera[1]:<longitud} ',f'{cabecera[2]:<27}')

Por más que busco no puedo encontrar mucha documentación de string-f.-
Gracias y un abrazo.
Hola Daniel, ¿cómo estás?

Ya casi lo tienes, solo falta añadirle llaves a "longitud" para que Python entienda que quieres indicar el nombre de una variable y no la cadena "longitud" en sí misma.

Código:
print(f'
{cabecera[0]:>7}',f' {cabecera[1]:<{longitud}} ',f'{cabecera[2]:<27}')

Saludos!
Hola, estoy muy bien y decirte que funciona a la perfección, gracias amigo. -