Спецификаторы формата
Управляйте шириной, точностью и выравниванием
«Спецификаторы формата» — бесплатный урок Python Academy на CoddyKit. Это урок 2 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения Python Academy, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс Python Academy содержит 4 уроков всего.
Спецификатор формата
Внутри f-строки или str.format двоеточие вводит спецификатор формата, который управляет отображением значения: {value:spec}.
pi = 3.14159
print(f'{pi:.2f}')Управление количеством знаков после запятой
.Nf форматирует число с плавающей точкой, оставляя ровно N цифр после десятичного разделителя и при необходимости выполняя округление.
value = 2.0 / 3.0
print(f'{value:.3f}')
print(f'{value:.0f}')Задание минимальной ширины
Число перед кодом типа задаёт минимальную ширину поля. Более короткие значения дополняются пробелами, чтобы столбцы выравнивались.
for n in [1, 42, 999]:
print(f'[{n:5}]')Выравнивание по левому краю, по правому краю и по центру
Флаги выравнивания: < — по левому краю, > — по правому краю, ^ — по центру. Они указываются сразу после двоеточия и перед шириной.
word = 'hi'
print(f'[{word:<8}]')
print(f'[{word:>8}]')
print(f'[{word:^8}]')Пользовательские символы заполнения
Поместите любой символ перед флагом выравнивания, чтобы использовать его для заполнения вместо пробелов.
print(f'{42:*^10}')
print(f'{7:0>5}')Ширина и точность одновременно
Объединяйте ширину и точность: {value:10.2f} означает ширину не менее 10 символов и 2 знака после десятичного разделителя.
price = 19.5
print(f'[{price:10.2f}]')Разделители тысяч
Запятая в спецификации группирует цифры по тысячам, делая большие числа более понятными.
big = 1234567
print(f'{big:,}')Проценты
Тип % умножает значение на 100 и добавляет знак процента, при этом можно указать точность.
ratio = 0.847
print(f'{ratio:.1%}')Системы счисления для целых чисел
Коды типов изменяют систему счисления: b — двоичная, o — восьмеричная, x — шестнадцатеричная с буквами в нижнем регистре, X — шестнадцатеричная с буквами в верхнем регистре.
n = 255
print(f'{n:b}')
print(f'{n:o}')
print(f'{n:x}')
print(f'{n:X}')Экспоненциальная запись
Тип e показывает числа в экспоненциальной записи, а точность задаёт количество цифр мантиссы.
n = 123456.789
print(f'{n:.2e}')Динамическая ширина с переменными
Ширину или точность можно вычислять из переменной, вкладывая фигурные скобки внутрь спецификации.
w = 10
val = 3.14159
print(f'[{val:{w}.2f}]')Быстрая проверка
Что выдаст f'{3.14159:.2f}'?
Повторение: спецификаторы формата
Основные спецификаторы после двоеточия:
.Nfзадаёт количество знаков после десятичного разделителя, а начальное число задаёт ширину.< > ^управляют выравниванием; перед ними можно указать необязательный символ заполнения.,группирует тысячи, а%отображает проценты.b o x X eизменяют представление чисел, а вложенные фигурные скобки позволяют задавать динамическую ширину.
for name, val in [('apple', 1.5), ('fig', 22.0)]:
print(f'{name:<8}{val:>8.2f}')Часто задаваемые вопросы
Урок «Спецификаторы формата» бесплатный?
Да — полный текст урока «Спецификаторы формата» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс Python Academy, подпишись на CoddyKit PRO. Курс Python Academy содержит 4 уроков всего.
Чему я научусь в уроке «Спецификаторы формата»?
Управляйте шириной, точностью и выравниванием Ты практикуешь Python Academy с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.
Нужен ли мне опыт, чтобы начать Python Academy?
Предыдущий опыт не требуется. Python Academy на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 2 из 4.
Сколько времени занимает урок «Спецификаторы формата»?
Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.
Можно ли писать и запускать код в этом уроке Python Academy?
Да. Каждый урок Python Academy включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.
Все уроки этого курса
- Выражения f-строк
- Спецификаторы формата
- Мини-язык форматирования
- Шаблонные строки и str.format