Python format ()

Ugrađena metoda format () vraća formatirani prikaz zadane vrijednosti koju kontrolira specifikator formata.

format()Funkcija je slična metodi Gudački formatu. Obje metode interno pozivaju __format__()metodu objekta.

Iako je ugrađena format()funkcija implementacija niske razine za __format__()interno formatiranje objekta , string format()je implementacija više razine koja može izvoditi složene operacije oblikovanja i na više nizova objekata.

Sintaksa formata () je:

 format (vrijednost (, format_spec))

format () Parametri

format()Funkcija traje dva parametra:

  • vrijednost - vrijednost koju treba formatirati
  • format_spec - Specifikacija načina oblikovanja vrijednosti.

Specifikator formata može biti u formatu:

((ispuniti) poravnati) (znak) (#) (0) (širina) (,) (. preciznost) (vrsta) gdje su opcije fill :: = bilo koji znak poravnanja :: = "" | "=" | znak "^" :: = "+" | "-" | "" širina :: = cijela preciznost :: = vrsta cijelog broja :: = "b" | "c" | "d" | "e" | "E" | "f" | "F" | "g" | "G" | "n" | "o" | "s" | "x" | "X" | "%"

Posjetite ove veze da biste saznali više o vrstama formata i poravnanju.

Vrati vrijednost iz formata ()

format()Funkcija vraća formatiran prikaz danu vrijednost koju je odredio format razvrstač.

Primjer 1: Oblikovanje brojeva pomoću formata ()

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

Izlaz

 123 123.456790 1100

Primjer 2: Oblikovanje brojeva s ispunom, poravnanjem, znakom, širinom, preciznošću i vrstom

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

Izlaz

 * + 1.234 0123,4570

Ovdje smo prilikom formatiranja cijelog broja 1234naveli specifikator formatiranja *>+7,d. Razumijemo svaku opciju:

  • * - Znak za popunjavanje ispunjava prazna mjesta nakon formatiranja
  • > - To je prava opcija poravnanja koja poravnava izlazni niz udesno
  • + - Opcija znaka je ta koja prisiljava broj na potpisivanje (znak s lijeve strane)
  • 7 - Opcija širine je ta koja prisiljava broj na minimalnu širinu od 7, ostali se prostori popunjavaju znakom za popunjavanje
  • , - Operater tisuće stavlja zarez između svih tisuća.
  • d - Opcija tipa određuje broj je cijeli broj.

Pri formatiranju broja s pomičnom zarezom 123.4567naveli smo specifikator formata ^-09.3f. Ovi su:

  • ^ - To je opcija središnjeg poravnanja koja poravnava izlazni niz sa središtem preostalog prostora
  • - - Opcija znaka je ta koja prisiljava samo negativne brojeve da pokazuju znak
  • 0 - Lik je taj koji je postavljen umjesto praznih mjesta.
  • 9 - Opcija širine je ta koja postavlja minimalnu širinu broja na 9 (uključujući decimalnu točku, tisuće zareza i znak)
  • .3 - Operater preciznosti taj je koji preciznost zadanog plutajućeg broja postavlja na 3 mjesta
  • f - Opcija tipa određuje broj je plovak.

Primjer 3: Korištenje formata () nadjačavanjem __format __ ()

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

Izlaz

 23

Ovdje smo nadjačali __format__()metodu klase Person.

Sada prihvaća formatparametar i vraća 23 ako je jednak 'age'. Ako nije naveden format, Nonevraća se.

format()Funkcija interno radi Person().__format__("age")da se vrati 23.

Zanimljivi članci...