Питхон формат ()

Уграђена метода формат () враћа форматирани приказ дате вредности контролисане спецификатором формата.

format()Функција је сличан метод стринг формату. Интерно обе методе позивају __format__()методу објекта.

Иако је уграђена format()функција имплементација ниског нивоа за __format__()интерно форматирање објекта , стринг format()је имплементација вишег нивоа која може да изводи сложене операције форматирања и на више низова објеката.

Синтакса формата () је:

 формат (вредност (, формат_спец))

формат () Параметри

format()Функција узима два параметра:

  • вредност - вредност коју треба форматирати
  • формат_спец - Спецификација начина форматирања вредности.

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

((попунити) поравнати) (знак) (#) (0) (ширина) (,) (. прецизност) (тип) где су опције филл :: = било који знак поравнати :: = "" | "=" | знак "^" :: = "+" | "-" | "" видтх :: = интегер прецизност :: = интегер типе :: = "б" | "ц" | "д" | "е" | "Е" | "ф" | "Ф" | "г" | "Г" | "н" | "о" | "с" | "к" | "Кс" | "%"

Посетите ове везе да бисте сазнали више о врстама формата и поравнању.

Врати вредност из формата ()

format()Функција враћа форматиран заступљеност одређеног вредности прописане од стране формату спецификатором.

Пример 1: Форматирање бројева помоћу формата ()

 # 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: Коришћење формата () заменом __формат __ ()

 # 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.

Занимљиви Чланци...