Мини-язык форматирования
Добавляйте отступы, знаки и разделители в числах
«Мини-язык форматирования» — бесплатный урок 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 — локальная установка не требуется.
Все уроки этого курса
- Выражения f-строк
- Спецификаторы формата
- Мини-язык форматирования
- Шаблонные строки и str.format