Как усечь строку, используя str.format
в Python? Возможно ли это?
Существует параметр ширины, указанный в Мини-язык спецификации формата:
format_spec ::= [[fill]align][sign][#][0][width][,][.precision][type]
...
width ::= integer
...
Но указание этого, по-видимому, работает только для заполнения, а не для усечения:
>>> '{:5}'.format('aaa')
'aaa '
>>> '{:5}'.format('aaabbbccc')
'aaabbbccc'
Так что это больше минимальная ширина, чем ширина.
Я знаю, что могу перерезать строки в виде списков, но обрабатываемые здесь данные полностью динамичны, включая строку формата и аргументы, которые входят. Я не могу просто пойти и явно нарезать один.