0Pricing
Python Academy · Урок

Мини-язык форматирования

Добавляйте отступы, знаки и разделители в числах

«Мини-язык форматирования» — бесплатный урок Python Academy на CoddyKit. Это урок 3 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения Python Academy, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс Python Academy содержит 4 уроков всего.

Мини-язык форматирования

Мини-язык спецификаций формата Python — это грамматика, расположенная после двоеточия. Полная форма выглядит так: [fill][align][sign][#][0][width][,][.precision][type].

В этом уроке рассматриваются знаки, заполнение и группировка.

print(f'{42:08.2f}')

Всегда показывать знак

Флаг знака + добавляет начальный + к положительным числам, а отрицательные всегда сохраняют свой -.

print(f'{5:+}')
print(f'{-5:+}')

Пробел для положительных чисел

Флаг пробела оставляет место для знака у положительных чисел, помогая выравнивать столбцы со смешанными знаками.

for n in [3, -3, 12]:
    print(f'[{n: }]')

Заполнение нулями

Указанный перед шириной 0 дополняет значение нулями вместо пробелов и учитывает положение знака.

print(f'{7:05}')
print(f'{-7:05}')

Группировка с помощью запятых

Запятая группирует тысячи. Объедините её с шириной и заполнением нулями, чтобы получить денежные столбцы фиксированной ширины.

amount = 48250
print(f'{amount:,}')
print(f'{amount:012,}')

Группировка с помощью подчёркивания

Подчёркивание тоже может группировать цифры. Оно работает и для двоичных, и для шестнадцатеричных чисел, группируя цифры по четыре.

print(f'{1000000:_}')
print(f'{255:_b}')

Альтернативная форма #

Флаг # добавляет префикс системы счисления для двоичных, восьмеричных и шестнадцатеричных чисел: 0b, 0o, 0x.

n = 255
print(f'{n:#b}')
print(f'{n:#x}')

Объединение знака и заполнения

Порядок имеет значение: знак указывается перед нулём и шириной. В этом примере положительные числа получают плюс и дополняются нулями до ширины 6.

for n in [42, -42]:
    print(f'{n:+06}')

Форматирование денежных значений

Объединив эти возможности, можно получать значения в денежном формате с группировкой и двумя знаками после десятичного разделителя.

total = 1234567.5
print(f'$ {total:,.2f}')

Заполнение, выравнивание и знак

В одной спецификации можно объединить символ заполнения, выравнивание и знак, получив полный контроль над выводом.

print(f'{99:*>+8}')
print(f'{-99:*>+8}')

Форматирование с помощью format()

Встроенная функция format(value, spec) применяет тот же мини-язык без необходимости использовать f-строку. Это удобно, когда спецификация вычисляется.

print(format(3.14159, '.2f'))
print(format(255, '#x'))

Быстрая проверка

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

Повторение: мини-язык форматирования

Вы изучили части грамматики спецификации:

  • Флаги знака: + всегда показывает знак, а пробел оставляет место для положительных чисел.
  • 0 дополняет нулями, а , и _ группируют цифры.
  • # добавляет префиксы 0b/0o/0x.
  • format(value, spec) применяет те же правила без f-строки.
print(f'{1234.5:+012,.2f}')

Часто задаваемые вопросы

Урок «Мини-язык форматирования» бесплатный?

Да — полный текст урока «Мини-язык форматирования» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс Python Academy, подпишись на CoddyKit PRO. Курс Python Academy содержит 4 уроков всего.

Чему я научусь в уроке «Мини-язык форматирования»?

Добавляйте отступы, знаки и разделители в числах Ты практикуешь Python Academy с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.

Нужен ли мне опыт, чтобы начать Python Academy?

Предыдущий опыт не требуется. Python Academy на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 3 из 4.

Сколько времени занимает урок «Мини-язык форматирования»?

Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.

Можно ли писать и запускать код в этом уроке Python Academy?

Да. Каждый урок Python Academy включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.

Все уроки этого курса

  1. Выражения f-строк
  2. Спецификаторы формата
  3. Мини-язык форматирования
  4. Шаблонные строки и str.format
← Назад к Python Academy