Вывод данных в поля заданной ширины

Бывает данные на экран надо вывести не через один пробел, а в виде таблицы. Другими словами, в полях определенной ширина, где ширина измеряется в знакоместах.

Рассмотрим пример. Допустим надо вывести числа второй строки под числами первой. Если выполнить функцию print() так:

print(10, 235)
print(1000, 50)

результат будет таким:

10 235
1000 50

Чтобы привести вывод к табличному виду, необходимо задать ширину поля:

print("%5d%7d" % (10, 235))
print("%5d%7d" % (1000, 50))

Результат:

   10     235
 1000      50

Здесь в кавычках указаны форматы данных и ширина полей. После знака % за кавычками указаны данные, которые будут подставлены вместо каждого указанного формата. Если количество форматов не совпадает с количеством данных, возникнет ошибка.

Форматы данных могут быть: d - целое число, s - строка, f - вещественное число, c - символ.

По умолчанию данные выравниваются по правому краю поля. Чтобы выровнять их по левому, достаточно поставить знак минус перед числом, обозначающим ширину поля. Пример:

print("%-5d%7d" % (10, 235))
print("%-5d%7d" % (1000, 50))

Вывод:

10       235
1000      50

Примечание. Это статья для начинающих. Более подробно о возможностях форматированного вывода в Python можно почитать здесь.