Функція format() в Python

 6079

Функція format() форматує вказані значення та вставляє їх у заповнювач рядка. Заповнювач визначається за допомогою фігурних дужок {}. Функція format() повертає відформатований рядок.

Наприклад:

Результат:

101101

Синтаксис функції format()

Параметри функції format()

Функція format() приймає два параметри:

   value — значення, яке необхідно відформатувати;

   format_spec — специфікація того, як слід відформатувати значення.

Специфікатор формату може бути наступним:

Значення, яке повертає функція format()

Функція format() повертає форматоване представлення заданого значення.

Приклад №1: Форматування числа за допомогою функції format()

Результат:

123
123.456790
1100

Приклад №2: Форматування числа за допомогою fill, align, sign, width, precision та type

Результат:

*+1,234
0123.4570

Тут при форматуванні цілого числа 1234 ми вказали специфікатор форматування *>+7,d. Розберемо кожну опцію:

   * — це символ заповнення, який заповнює порожні місця після форматування;

   > — це опція вирівнювання по правому краю;

   + — це опція знаку, яка змушує число мати знак зліва;

   7 — це опція ширини, яка змушує число приймати мінімальну ширину 7, інші пробіли будуть заповнені символом заповнення;

   , — це оператор тисяч, який ставить кому між тисячами;

   b — це тип опції, який вказує, що число є цілим числом.

При форматуванні числа з плаваючою крапкою 123.4567 ми вказали специфікатор формату ^-09.3f. Розберемо детально:

   ^ — це опція вирівнювання по центру, яка вирівнює вихідний рядок по центру простору, що залишився;

   - — це опція знака, яка додає знак від’ємним числам;

   0 — це символ, який ставиться на місце порожніх місць;

   9 — це опція ширини, яка встановлює мінімальну ширину числа рівною 9 (включаючи десяткову крапку, кому тисяч і знак);

   .3 — це оператор точності, який встановлює точність заданого числа з плаваючою крапкою до 3 знаків;

   f — це опція типу, яка вказує, що число є числом з плаваючою крапкою.

Приклад №3: Використання функції format(), перевизначаючи метод __format__()

Результат:

23

Тут ми перевизначили метод __format__() класу Person. Метод приймає параметр format і повертає 23, якщо він дорівнює age. Якщо формат не вказано, повертається None.

Функція format() всередині виконує Person().__format__("age"), щоб повернути 23.

Вбудована функція format() vs. Рядковий метод format()

Функція format() дуже схожа на рядковий метод format(). Всередині обидва методи викликають метод __format__() об’єкта класу.

У той час як вбудована функція format() є низькорівневою реалізацією для форматування об’єкта з використанням внутрішнього методу __format__(), рядковий метод format() є реалізацією вищого рівня, яка здатна також виконувати комплексні операції форматування для декількох об’єктів.

Оцінити статтю:

1 Зірка2 Зірки3 Зірки4 Зірки5 Зірок (4 оцінок, середня: 4,00 з 5)
Завантаження...

Залишити відповідь

Ваш E-mail не буде опублікований. Обов'язкові поля відмічені *