2013-07-01 5 views
0

В настоящее время у меня есть шаблон для распечатки столбцов в таблице на стандартный вывод:Python формат строки, падение символов, если слишком долго

template = "%-5s%-8s%-20s%-20s%-20s%-15s%-15s%-15s%-15s%-15s" 

я использую его в качестве так, чтобы распечатать мои строки

print template % row 

Однако некоторые столбцы в строке охватывают количество символов (например, первая строка должна быть ограничена пространством, выделенным (5) шаблоном). Есть ли функция или спецификатор, который я могу использовать со строковым форматом, который будет прерывать символы с конца строки, чтобы он соответствовал выделенному пространству (или, еще лучше, длине, которую я указываю как предел). Это не делает что-то вроде:

for i in range(0, len(row)): 
    row[col] = row[col][0:limit[i]] 

ответ

1

Укажите точность в строковом формате.

>>> '%.5s' % ('1234567890',) 
'12345' 
+0

Должно быть «% 5.5s», чтобы применять как минимальный, так и максимальный размер. – interjay

+0

Ах, глупо мне, спасибо, это работает. – Ford

Смежные вопросы