Встроенный метод format () возвращает форматированное представление заданного значения, управляемое спецификатором формата.
format()Функция аналогична методу формата строки. Внутри оба метода вызывают __format__()метод объекта.
В то время как встроенная format()функция является реализацией низкого уровня для __format__()внутреннего форматирования объекта , string format()- это реализация более высокого уровня, способная выполнять сложные операции форматирования также и с несколькими строками объекта.
Синтаксис функции format ():
формат (значение (, формат_спек))
format () Параметры
format()Функция принимает два параметра:
- значение - значение, которое нужно отформатировать
- format_spec - спецификация того, как значение должно быть отформатировано.
Спецификатор формата может иметь следующий формат:
((заливка) выравнивание) (знак) (#) (0) (ширина) (,) (. точность) (тип) где, параметры: заливка :: = выравнивание любого символа :: = "" | "=" | Знак "^" :: = "+" | "-" | "" ширина :: = целочисленная точность :: = целочисленный тип :: = "b" | "с" | "д" | "е" | "E" | "е" | "F" | "г" | "G" | «п» | "о" | "с" | «х» | «Х» | "%"
Посетите эти ссылки, чтобы узнать больше о типах форматов и выравнивании.
Возвращаемое значение из format ()
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"))
Вывод
* + 1,234 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.








