Ошибка значения при выполнении форматирования строки {Python, Windows 10}

#python #string

#python #строка

Вопрос:

Мой фрагмент кода: print('{:<n1} {:<20} {:<45} {:<20}'.format('No', 'Query', 'Result Path', 'Accuracy'))

где n1 — целочисленная переменная, что-то вроде n1=int(query_search[1])

Однако это приводит к ошибке обратной трассировки: ValueError:Invalid format specifier

Приветствуются любые советы

Ответ №1:

Следующее вызовет ValueError: Unknown format code исключение:

 n = 8

print("{:<n}world".format("hello"))
  

Итак, один из способов добиться желаемого поведения, хотя это немного глупо, — использовать f-строку:

 print(f"{{:<{n}}}world".format("hello"))
  

Вывод:

 hello   world