Author Topic: [python]Error con string-f al querer utilizar valor de una variable  (Read 372 times)

Daniel.py

  • Newbie
  • *
  • Posts: 3
  • Karma: 0
    • View Profile
Hola, chuidiang ¿cómo estás?
Con las 3 líneas de código que pongo a continuación seguramente te darás 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 del campo Producto pero me da un error:

Quote
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

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

Gracias y un abrazo.
Daniel

chuidiang

  • Administrator
  • Hero Member
  • *****
  • Posts: 5455
  • Karma: 12
    • View Profile
    • Apuntes de programación
Re: [python]Error con string-f al querer utilizar valor de una variable
« Reply #1 on: Abril 07, 2018, 07:53:19 pm »
Hola:
No veo ningún 15.
Da la impresión de ser un problema en el formato de la cadena ...¿Qué versión de python están usando?
Saludos.

Daniel.py

  • Newbie
  • *
  • Posts: 3
  • Karma: 0
    • View Profile
Re: [python]Error con string-f al querer utilizar valor de una variable
« Reply #2 on: Abril 07, 2018, 09:12:41 pm »
Hola, jajaja, creí que con esto te darías cuenta donde estaba el 15 >7  un <15 y un <27 (alojado en la variable longitud), de cualquier manera ya lo solucione. -

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

Un abrazo.

 

ey