logo

Python kimenet formázása

Ebben az oktatóanyagban megtanuljuk a kimenet formázását. A formázás és a kimenet egy program kimenetének bemutatására vonatkozik. Formázhatjuk a kimenetet ember által olvasható formában, vagy írhatjuk az adatokat fájlba és más megadott formában. Néha vezérelnünk kell az érkező kimenetet, hogy igényeinknek megfelelően formázhassuk. A felhasználók kezelhetik a karakterláncokat karakterláncszeletelési és összefűzési műveletekkel bármilyen elrendezés létrehozásához.

A kimenet formázásának többféle módja van.

  • Használhatjuk az f string metódust a string literálok formázására.
  • A formátum() A karakterláncok módszere segít a felhasználónak egy szebb kimenet létrehozásában.
  • A karakterlánc-összefűzési műveleteket is elvégezhetjük, így bármilyen elrendezést létrehozhatunk. A string osztálynak van néhány metódusa is, amelyek hasznos műveleteket hajtanak végre a karakterláncok adott oszlopszélességű kitöltésére.

Kimenet formázása String Modulo Operator használatával (%)

A % operátor segít a karakterlánc formázásában. A bal oldali argumentumot úgy értelmezi printf() formátum karakterlánc alkalmazva a megfelelő argumentumhoz. A Python nem biztosítja a printf() funkció. Ebből a célból a modulo operátort a karakterlánc-osztály túlterheli a karakterlánc formázása érdekében. String Modulo operátorként is ismert.

A karakterlánc modulo operátor továbbra is elérhető Pythonban (3.x), és széles körben használják, de manapság a régi formázási stílust eltávolították a nyelvből.

Értsük meg a következő példát -

dátum karakterláncra való átalakítása

Példa -

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

Kimenet:

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

Magyarázat -

A fenti kódban a '%2d' egy helyőrző, amely a sor első elemét használja. Kiírja a két karaktert. A lebegőszám formátumleírásához a „%5.2f” kerül felhasználásra. A többi helyőrzőhöz hasonlóan % karakterrel is bevezetik. Megmutatja a benne lévő karakterláncok teljes számát. A szám decimális része vagy a pontosság 2-re van állítva, a „.” a helyőrzőben. Az utolsó karakter, az „f” egy lebegő számot jelöl.

A kimenet formázása a formázási módszerrel

A formátum() módszer több kézi erőfeszítést igényel, mint más módszerek. A {} segítségével jelöljük a változók helyettesítését, és részletes formázási utasításokat adunk, de meg kell adnunk a formázott információkat is. Pozíciós formázásként használhatjuk a zárójelben lévő számot. Értsük meg a következő példát.

Példa -

 # 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')) 

Kimenet:

 Hello World Welcome to JavaTpoint JavaTpoint to Welcome 

Az elemen belüli zárójeleket és karaktereket formátummezőknek nevezzük, amelyek helyére a következőbe átadott objektum kerül formátum() módszer. A zárójelben lévő szám a format() metódusba átadott objektum pozíciójára utalhat.

python os listdir

Értsünk egy másik példát -

Példa -

 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)) 

Kimenet:

 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 

Példa - 3:

tömbök java-ban
 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)) 

Kimenet:

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

A kimenet formázása karakterlánc-módszerrel

A kimenetet a string szeletelés és az összefűzési műveletek segítségével is formázhatjuk. A karakterlánctípusnak van néhány olyan módszere, amely segíti a kimenet egyszerűbb formázását. Néhány módszer, amely segít a kimenet formázásában - str.light(), str.rjust(), és str.centre(). Értsük meg a következő példát -

Példa -

 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, '-')) 

Kimenet:

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

Formátumkonverziós szabály a Pythonban

Az alábbiakban az átalakítás táblázata és jelentése látható.

Átalakítás Jelentése
d Előjeles egész decimális számot jelöl.
én Előjeles egész decimális számot jelöl.
O Előjel nélküli oktálist jelent.
ban ben Elavult és egyenértékű a 'd'-vel, azaz előjeles egész decimális.
x Előjel nélküli hexadecimális (kisbetűs) jelet jelöl.
x Előjel nélküli hexadecimális (nagybetűs) jelet jelöl.
Ez Lebegőpontos exponenciális formátumot jelent (kisbetűs).
ÉS Lebegőpontos exponenciális formátumot jelent (nagybetűs).
f Lebegőpontos decimális formátumot képvisel.
F Lebegőpontos decimális formátumot képvisel.
g Ugyanazt jelenti, mint az „e”, ha a kitevő nagyobb, mint -4, vagy kisebb, mint a pontosság, ellenkező esetben az „f”.
G Ugyanazt jelenti, mint az 'E', ha a kitevő nagyobb, mint -4, vagy kisebb, mint a pontosság, ellenkező esetben az 'F'.
c Egykaraktert jelent (egész vagy egykarakteres karakterláncot fogad el).
r Ez a karakterláncot képviseli (a repr() segítségével bármilyen python objektumot konvertál).
s Ez a karakterláncot képviseli (bármilyen python objektumot átalakít az str() használatával).
% Azt jelenti, hogy nincs argumentum konvertálva, '%' karaktert eredményez az eredményben.

Következtetés

Megbeszéltük, hogyan kell formázni a kimenetet Pythonban. A különféle technikákat példákkal együtt ismertettük. A Python lehetőséget biztosít a kimenet igény szerinti módosítására. A felhasználók használhatják a string vagy formátum() pozicionális argumentumokkal rendelkező módszerek. Ez az oktatóanyag az átalakítási szabályok táblázatát is tartalmazza.