ОБСУЖДЕНИЕ

Как задать в format количество знакомест переменной?

3 ответов 3,6 тыс.
AI-выжимка обсуждения скоро

Краткие тезисы обсуждения со ссылками на ключевые ответы появятся здесь.

Автор темы
Хотелось бы красиво вывести описание итераций, где в начале поставить номер итерации. Количество итераций может быть разным, поэтому хочется отвести под этот индекс вычисляемое количество знакомест:
Код:
nn=20
s=1
fact=1
zn=int(math.log10(nn)+1
for i in range(1,nn+1):
    fact=fact*i
    s=s+(1/fact)
    print('{: >zn}'.format(i),s)
однако Питон ругается. Видимо format ожидает только цифры. Есть возможность такое сделать?
 
Python:
format_pattern = '{left:<%s}{right}' % 10
print(format_pattern.format(left=i, right=s))
 
Последнее редактирование:
  • Нравится
Реакции: explorer и Shandrik
2
Хотелось бы красиво вывести описание итераций, где в начале поставить номер итерации. Количество итераций может быть разным, поэтому хочется отвести под этот индекс вычисляемое количество знакомест:
Код:
nn=20
s=1
fact=1
zn=int(math.log10(nn)+1
for i in range(1,nn+1):
    fact=fact*i
    s=s+(1/fact)
    print('{: >zn}'.format(i),s)
однако Питон ругается. Видимо format ожидает только цифры. Есть возможность такое сделать?

"zn = int(math.log10(nn)+ 1” , У тебя скобка после "1" пропущена
 
Да, пропусил, скобку.
Спасибо, Хлебушек, - получилось!