„Python“ formatas ()

Integruotas formato () metodas pateikia formato nurodytosios vertės suformatuotą vaizdą.

format()Funkcija yra panaši į Styginių formato metodu. Viduje abu metodai vadina __format__()objekto metodą.

Nors įmontuota format()funkcija yra žemo lygio objektų formatavimas naudojant __format__()vidinį, eilutė format()yra aukštesnio lygio diegimas, galintis atlikti sudėtingas formatavimo operacijas ir kelioms objekto eilutėms.

Formato () sintaksė yra:

 formatas (reikšmė (, formato_spec))

formatas () Parametrai

format()Funkcija trunka du parametrus:

  • vertė - vertė, kurią reikia suformatuoti
  • format_spec - Nurodymas , kaip vertė turėtų būti formatuojama.

Formato specifikatorius gali būti tokio formato:

((užpildyti) sulygiuoti) (ženklas) (#) (0) (plotis) (,) (. tikslumas) (tipas) kur, parinktys yra užpildyti :: = bet koks simbolis sulygiuotas :: = "" | "=" | "^" ženklas :: = "+" | "-" | "" plotis :: = sveiko skaičiaus tikslumas :: = sveiko skaičiaus tipas :: = "b" | "c" | "d" | "e" | "E" | "f" | "F" | "g" | "G" | "n" | "o" | "s" | "x" | "X" | „%“

Apsilankykite šiose nuorodose, kad sužinotumėte daugiau apie formato tipus ir derinimą.

Grąžinimo vertė iš formato ()

format()Funkcija grąžina suformatuoti atstovavimą pagal formato specyfikator nurodytą tam tikrą vertę.

1 pavyzdys: skaičių formatavimas naudojant 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"))

Rezultatas

 123 123.456790 1100

2 pavyzdys: skaičių formatavimas užpildant, sulygiuoti, ženklą, plotį, tikslumą ir tipą

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

Rezultatas

 * + 1 234 0123,4570

Čia, formatuodami sveikąjį skaičių 1234, nurodėme formatavimo specifikatorių *>+7,d. Supraskime kiekvieną variantą:

  • * - Tai yra užpildymo simbolis, kuris užpildo tuščias vietas po formatavimo
  • > - Tai yra tinkama lygiavimo parinktis, kuri išvesties eilutę ištiesina į dešinę
  • + - Tai ženklo parinktis, kuri priverčia pasirašyti skaičių (kairėje pusėje yra ženklas)
  • 7 - Tai yra pločio parinktis, kuri verčia skaičių užimti mažiausiai 7 plotus, kitas tarpus užpildys užpildymo simbolis
  • , - Tai tūkstančių operatorius, kuris padeda kablelį tarp visų tūkstančių.
  • d - Tai tipo parinktis, nurodanti, kad skaičius yra sveikasis skaičius.

Formatuodami slankiojo kablelio skaičių 123.4567nurodėme formato specifikatorių ^-09.3f. Šitie yra:

  • ^ - Tai yra centro sulyginimo parinktis, kuri išlygiuoja išvesties eilutę su likusios vietos centru
  • - - Tai ženklo parinktis, kuri priverčia ženklą rodyti tik neigiamus skaičius
  • 0 - Vietoje tuščių vietų dedamas personažas.
  • 9 - Tai yra pločio parinktis, nustatanti mažiausią skaičiaus plotį iki 9 (įskaitant kablelį, tūkstančius kablelių ir ženklą)
  • .3 - Tikslusis operatorius nustato nurodyto plūduriuojančio skaičiaus tikslumą į 3 vietas
  • f - Tai tipo parinktis, nurodanti, kad skaičius yra plūduriuojantis.

3 pavyzdys: formato () naudojimas nepaisant __format __ ()

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

Rezultatas

 23

Čia mes atmetėme __format__()klasės metodą Person.

Dabar jis priima formatparametrą ir pateikia 23, jei jis yra lygus 'age'. Jei formatas nenurodytas, Nonegrąžinamas.

format()Funkcija viduje veikia Person().__format__("age")grąžinti 23.

Įdomios straipsniai...