logo

Python izlazno oblikovanje

U ovom vodiču naučit ćemo formatirati izlaz. Formatiranje i izlaz odnose se na predstavljanje izlaza programa. Izlaz možemo formatirati u obliku čitljivom za čovjeka ili zapisati podatke u datoteku i neki drugi specificirani oblik. Ponekad moramo kontrolirati dolazeći izlaz kako bismo ga mogli formatirati prema našim zahtjevima. Korisnici mogu rukovati nizovima korištenjem operacija rezanja nizova i ulančavanja za stvaranje bilo kojeg izgleda.

Postoje različiti načini formatiranja izlaza.

  • Možemo koristiti f string metodu za formatiranje string literala.
  • The format() metoda stringova pomaže korisniku da stvori ljepši izlaz.
  • Također možemo izvesti operacije ulančavanja nizova kako bismo stvorili bilo koji izgled koji želimo. Klasa nizova također ima neke metode koje izvode korisne operacije za popunjavanje nizova do zadane širine stupca.

Formatiranje izlaza pomoću String Modulo operatora (%)

Operator % pomaže nam u formatiranju niza. Lijevi argument tumači kao printf() formatni niz primijenjen na desni argument. Python ne pruža printf() funkcija. U tu svrhu, modulo operator je preopterećen klasom niza za izvođenje formatiranja niza. Također je poznat kao String Modulo operator.

String modulo operator je još uvijek dostupan u Pythonu (3.x) i naširoko se koristi, ali danas je stari stil oblikovanja uklonjen iz jezika.

Razumimo sljedeći primjer -

Primjer -

 #integer and float value print('integer : % 2d, float : % 5.2f' %(1, 05.333)) #integer value print('Total Player : % 3d, Batsman : % 2d' %(24, 12)) #octal value print('% 5.3o'% (50)) #exponential value print('% 10.2E'% (456.1458)) 

Izlaz:

 integer : 1, float : 5.33 Total Player : 24, Batsman : 12 062 4.56E+02 

Objašnjenje -

U gornjem kodu, '%2d' je rezervirano mjesto koje koristi prvi element torke. Ispisuje dva znaka. Za opis formata float broja koristi se '%5.2f'. Također se uvodi sa znakom % kao i druga rezervirana mjesta. Prikazuje ukupan broj nizova koje može sadržavati. Decimalni dio broja ili preciznost postavljeni su na 2, broj iza '.' u rezerviranom mjestu. Posljednji znak, 'f', pokazuje float broj.

Formatiranje izlaza pomoću metode formatiranja

The format() metoda zahtijeva više ručnog napora nego druge metode. Koristimo {} za označavanje zamjene varijabli i pružanje detaljnih uputa za formatiranje, ali također moramo pružiti formatirane informacije. Možemo koristiti broj u zagradama kao položajno oblikovanje. Razumimo sljedeći primjer.

Primjer -

 # using format() method print('{} {}'.format('Hello', 'World')) # using format() method and referring # a position of the object print('{0} to {1}'.format('Welcome', 'JavaTpoint')) print('{1} to {0}'.format('Welcome', 'JavaTpoint')) 

Izlaz:

 Hello World Welcome to JavaTpoint JavaTpoint to Welcome 

Zagrade i znakovi unutar stavke nazivaju se polja formata koja se zamjenjuju objektom proslijeđenim u format() metoda. Broj u zagradama može se koristiti za upućivanje na položaj objekta proslijeđen metodi format().

Razumimo još jedan primjer -

Primjer -

 print('Number one position is {0}, {1}, and {other}.' .format('Java', 'T', other ='Point')) # using format() method with number print('Java :{0:2d}, Tpoint :{1:8.2f}'. format(12, 00.546)) # Changing positional argument print('Second argument: {1:3d}, first one: {0:7.2f}'. format(47.42, 11)) print('Java: {a:5d}, Tpoint: {p:8.2f}'. format(a = 453, p = 59.058)) 

Izlaz:

 Number one position is Java, T, and Point. Java :12, Tpoint : 0.55 Second argument: 11, first one: 47.42 Java: 453, Tpoint: 59.06 

Primjer - 3:

 tab = {'Java': 4127, 'T': 4098, 'point': 8637678} # using format() in dictionary print('Java: {0[Java]:d}; For: {0[T]:d}; ' 'Java: {0[Java]:d}'.format(tab)) data = dict(fun ='JavaTpoint', adj ='Website') # using format() in dictionary print('I love {fun} {adj}'.format(**data)) 

Izlaz:

 Java: 4127; For: 4098; Java: 4127 I love JavaTpoint Website 

Formatiranje izlaza korištenjem String metode

Također možemo formatirati izlaz korištenjem operacija rezanja nizova i ulančavanja. Vrsta niza ima neke metode koje pomažu formatirati izlaz na dotjeraniji način. Nekoliko metoda koje pomažu u formatiranju izlaza - str.light(), str.rjust(), i str.centar(). Razumimo sljedeći primjer -

Primjer -

 str1 = 'I love JavaTpoint' # Printing the center aligned # string with fillchr print ('Center aligned string with fillchr: ') print (str1.center(30, '$')) # Printing the left aligned # string with '-' padding print ('The left aligned string is : ') print (str1.ljust(40, '&')) # Printing the right aligned string # with '-' padding print ('The right aligned string is : ') print (str1.rjust(40, '-')) 

Izlaz:

 Center aligned string with fillchr: $$$$$$I love JavaTpoint$$$$$$$ The left aligned string is: I love JavaTpoint&&&&&&&&&&&&&&&&&&&&&&& The right aligned string is : -----------------------I love JavaTpoint 

Pravilo pretvorbe formata u Pythonu

Ispod je tablica pretvorbe i njezino značenje.

Pretvorba Značenje
d Predstavlja decimalni cijeli broj s predznakom.
i Predstavlja decimalni cijeli broj s predznakom.
O Predstavlja nepredpisani oktal.
u Predstavlja zastarjelo i ekvivalentno je 'd', tj. decimalni cijeli broj s predznakom.
x Predstavlja heksadecimalni broj bez predznaka (mala slova).
x Predstavlja heksadecimalni broj bez predznaka (veliko slovo).
to je Predstavlja eksponencijalni format s pomičnim zarezom (mala slova).
I Predstavlja eksponencijalni format s pomičnim zarezom (velika slova).
f Predstavlja decimalni format s pomičnim zarezom.
F Predstavlja decimalni format s pomičnim zarezom.
g Predstavlja Isto kao 'e' ako je eksponent veći od -4 ili manji od preciznosti, 'f' u suprotnom.
G Predstavlja isto kao 'E' ako je eksponent veći od -4 ili manji od preciznosti, 'F' u suprotnom.
c Predstavlja jedan znak (prihvaća cijeli broj ili niz s jednim znakom).
r Predstavlja String (pretvara bilo koji python objekt pomoću repr()).
s Predstavlja String (pretvara bilo koji python objekt pomoću str()).
% Predstavlja Nijedan argument nije pretvoren, rezultira znakom '%' u rezultatu.

Zaključak

Raspravljali smo o tome kako formatirati izlaz u Pythonu. Opisali smo razne tehnike zajedno s primjerima. Python pruža mogućnost izmjene izlaza prema zahtjevima. Korisnici mogu koristiti niz ili format() metode s pozicijskim argumentima. Ovaj vodič također uključuje tablicu pravila pretvorbe.