Формат Python ()

Вбудований метод format () повертає відформатоване подання заданого значення, керованого специфікатором формату.

format()Функція аналогічна методу формату рядка. Внутрішньо обидва методи викликають __format__()метод об'єкта.

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

Синтаксис format () такий:

 формат (значення (, format_spec))

format () Параметри

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

  • value - значення, яке потрібно відформатувати
  • format_spec - специфікація форматування значення.

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

((заливка) вирівнювання) (знак) (#) (0) (ширина) (,) (. точність) (тип) де параметри заповнюються :: = будь-який символ вирівнювання :: = "" | "=" | "^" знак :: = "+" | "-" | "" ширина :: = ціла точність :: = цілий тип :: = "b" | "с" | "d" | "е" | "Е" | "f" | "F" | "g" | "G" | "n" | "o" | "s" | "х" | "Х" | "%"

Відвідайте ці посилання, щоб дізнатись більше про типи форматів та вирівнювання.

Повернути значення з формату ()

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

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

 # d, f and b are type # integer print(format(123, "d")) # float arguments print(format(123.4567898, "f")) # binary format print(format(12, "b"))

Вихідні дані

 123 123,456790 1100

Приклад 2: Форматування чисел із заливкою, вирівнюванням, знаком, шириною, точністю та типом

 # integer print(format(1234, "*>+7,d")) # float number print(format(123.4567, "^-09.3f"))

Вихідні дані

 * + 1234 0123,4570

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

  • * - Це символ заповнення, який заповнює порожні місця після форматування
  • > - Це правильний варіант вирівнювання, який вирівнює вихідний рядок праворуч
  • + - Це варіант знаку, який змушує номер підписуватися (маючи знак зліва)
  • 7 - Саме параметр ширини змушує число приймати мінімальну ширину 7, інші пробіли заповнюються символом заливки
  • , - Це оператор тисяч, який ставить кому між усіма тисячами.
  • d - Саме параметр типу вказує, що число є цілим числом.

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

  • ^ - Це варіант вирівнювання по центру, який вирівнює вихідний рядок до центру залишку місця
  • - - Це варіант знака, який змушує показувати знак лише негативні числа
  • 0 - Це символ, який розміщується на місці порожніх пробілів.
  • 9 - Це варіант ширини, який встановлює мінімальну ширину числа до 9 (включаючи десяткову крапку, тисячу коми та знак)
  • .3 - Саме оператор точності встановлює точність даного плаваючого числа в 3 місця
  • f - Це параметр типу, який визначає число з плаваючою лінією.

Приклад 3: Використання format () шляхом заміни __format __ ()

 # custom __format__() method class Person: def __format__(self, format): if(format == 'age'): return '23' return 'None' print(format(Person(), "age"))

Вихідні дані

 23

Тут ми замінили __format__()метод класу Person.

Тепер він приймає formatпараметр і повертає 23, якщо він дорівнює 'age'. Якщо формат не вказаний, Noneповертається.

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

Цікаві статті...