Python String format() Magyarázza meg a PÉLDÁK segítségével
Mi a Python String formátum()?
Python Karakterlánc formátum() egy függvény, amellyel helyettesítheti, helyettesítheti vagy konvertálja a karakterláncot olyan helyőrzőkkel, amelyek az utolsó karakterláncban érvényes értékekkel rendelkeznek. Ez egy beépített funkciója a Python string osztály, amely a formázott karakterláncot adja vissza kimenetként. A karakterláncon belüli helyőrzők zárójelben vannak megadva.
Például: "Üdvözöljük a Guru99-ben {}".format('value here').
A format() függvény szintaxisa in Python
templatestring.format(val1, val2...)
paraméterek
érték1, érték2 … : Azok az értékek, amelyeket le kell cserélni az adott sablonkarakterláncban, amely helyőrzőket tartalmaz szögletes zárójelek formájában {}. A helyőrzők lehetnek karakterlánc, kulcs/érték pár, egész számok, lebegőpontos számok, karakterek stb.
Visszatérési érték
Az utolsó karakterláncot adja vissza, az érvényes értékeket a zárójelben megadott helyőrzők helyére cserélve.
Helyőrzők
A sablonkarakterláncban lévő helyőrzők zárójelekkel vannak ábrázolva, pl. {}. A helyőrző lehet üres {}, vagy lehet benne változó pl. {name} , vagy lehet számindex is, pl. {0} , {1} stb.
Hogyan működik a string format()?
A Python Karakterlánc formátum() módszer helyőrzőket keres az eredeti karakterláncokban. A helyőrzők lehetnek üres zárójelek ({}), pozíció argumentumok, azaz a karakterlánc tartalmazhat 0, 1 indexű helyőrzőket pl. {0}, {1} stb.
Kulcsszó-argumentumok esetén a változó neve a szögletes zárójelben található, például: {name}, {age}. Üres göndör zárójelek esetén a formátum értékei sorrendben cserélődnek a szögletes zárójelekbe.
Az első érték helyére az első üres göndör zárójel, majd a következő következik. Pozíciós argumentumok esetén az index 0-tól kezdődik és így tovább. Az értékek vesszővel és 0-val elválasztva lesznek elérhetőkth érték a formátumon belüli első értékre mutat, és így tovább.
Kulcsszó argumentumokhoz, azaz amikor változót használ a helyőrzőkön belül, szükség szerint megadhatja az értékek sorrendjét a formátumon belül.
A sorrend itt nem számít, mivel az értékeket a format()-ban lévő változónév alapján cseréljük le. Íme néhány példa arra, hogyan használhatunk helyőrzőket egy karakterláncon belül üresként, pozícióként, valamint kulcsszavakat vagy változókat használva.
Példa: Az üres helyőrző karakterlánc értékre cserélve
Az alábbi példában a karakterlánc üres zárójeleket ({}) tartalmaz. A formátumnak adott érték a zárójelben ({}) lecserélődik.
A lecserélni kívánt érték egy karakterlánc.
Példa:
A karakterlánc formázás használata in Python, azt szeretnénk, hogy a göndör zárójeleket ({}) egy karakterlánc értékre cseréljük. Az értéket a format (“Guru99”) kapja. Végrehajtáskor a göndör zárójelek {} helyére Guru99 kerül, és az utolsó karakterláncot Üdvözöljük a Guru99 oktatóprogramjában kapod meg.
print ("Welcome to {} tutorials".format("Guru99"))
output:
Welcome to Guru99 tutorials
Példa: Az üres helyőrző numerikus értékkel helyettesítve
Az alábbi példában azt szeretnénk, hogy a numerikus érték az eredeti karakterláncon belül legyen lecserélve. A göndör zárójeleket ({}) a rendszer hozzáadja ahhoz a helyhez, ahol a számértékre van szüksége. Amikor végrehajtja, az üres zárójeleket ({}) a numerikus érték helyettesíti.
Példa:
A format() segítségével számokat is beszúrhat a karakterláncba. A példa bemutatja, hogyan lehet az üres {} helyőrzőt 99-es számmal helyettesíteni a format()-ban.
print ("Welcome to Guru{} Tutorials".format("99"))
output:
Welcome to Guru99 Tutorials
Példa: Változó- vagy kulcsszóargumentumok használata a helyőrzőn belül
Lehetőség van a göndör zárójelben lévő változók használatára is, amint az az alábbi példában látható. A változók a format()-on belül vannak definiálva. Ezért, amikor végrehajtja, a változóhoz rendelt érték lecserélődik az eredeti karakterláncon belül.
Példa:
Használhat változókat szögletes zárójelben, például {name} {num}. A név és a szám változó értékei a formátumon belül érhetők el, pl. format(name=”Guru”, num=”99″). A name és a num értékeket a(z) {name} és {num} belül lecseréljük.
print ("Welcome to {name}{num} Tutorials".format(name="Guru", num="99"))
output:
Welcome to Guru99 Tutorials
Példa: Index vagy pozíció argumentumok használata a helyőrzőn belül
Az értékek a helyőrzőkön belüli indexekkel helyettesíthetők, például 0, 1, 2. Az értéket a rendszer a format() formátumból választja ki, az alábbi példában látható módon.
Példa:
print ("Welcome to {0}{1} Tutorials".format("Guru","99"))
output:
Welcome to Guru99 Tutorials
Példa: Több helyőrző használata egy karakterláncon belül
Ebben a példában több üres helyőrzőt fogunk használni.
Példa:
A példában használt karakterláncnak több üres helyőrzője van, és mindegyik helyőrző a format()-on belüli értékre fog hivatkozni. Az első érték lecserélődik az első helyőrzőre és így tovább.
print ("{} is {} new kind of {} experience!".format("Guru99", "totally","learning"))
output:
Guru99 is totally new kind of learning experience!
Formázás a helyőrzőkön belül
Láttad, hogy lehetséges a Helyőrző üres, változóval vagy indexszel. Az is lehetséges, hogy lehet jelentkezni Python Karakterlánc formázása a helyőrzőn belül.
Itt van a formátumok listája
kialakított | Leírás | Példa |
---|---|---|
:d |
A kimenetet decimális formátumban adja meg, ha a helyőrzőn belül használják | print("The binary to decimal value is : {:d}".format(0b0011))
output: The binary to decimal value is : 3 |
:b |
A kimenetet bináris formátumban adja meg, ha a helyőrzőn belül használjuk | print("The binary value is : {:b}".format(500))
output: The binary value is : 111110100 |
:e |
A kimenetet tudományos formátumban adja meg, ha a helyőrzőn belül használjuk, az e kitevő a kimenetben kisbetűs lesz. | print("The scientific value is : {:e}".format(40))
output: The scientific format value is : 4.000000e+01 |
:E |
A kimenetet tudományos formátumban adja meg, ha a helyőrzőn belül használja, az E kitevő a kimenetben nagybetűs lesz | print("The scientific value is : {:E}".format(40))
output: The scientific value is : 4.000000E+01 |
:f |
Ez fixpontos számformátumot fog kiadni. Alapértelmezés szerint bármilyen szám kimenete hat tizedesjegygel történik. Ha legfeljebb 2 tizedesjegyre van szüksége, használja ezt. 2f azaz. egy pont (.) a 2f előtt | print("The value is : {:f}".format(40))
output: The value is : 40.000000 Példa: A kimenet megjelenítése 2 tizedesjegyig.
output: The value is: 40.00 |
:o |
Ez oktális formátumot ad ki | print("The value is : {:o}".format(500))
output: The value is : 764 |
:x |
Ez hexadecimális formátumot ad ki kisbetűkkel | print("The value is : {:x}".format(500))
output: The value is : 1f4 |
:X |
Ez hexadecimális formátumot ír ki nagybetűkkel. | print("The value is : {:X}".format(500))
output: The value is : 1F4 |
:n |
Ez számformátumot fog kiadni. | print("The value is : {:n}".format(500.00))
output: The value is : 500 |
:% |
Ez százalékos formátumban adja meg a kimenetet. Alapértelmezésben 6 tizedesjegyet ad a százalékos kimenethez, ha nem akarunk tizedesjegyet, akkor 0-val, azaz (:.0%) pontot használhatunk. |
print("The value is : {:%}".format(0.80))
output: The value is : 80.000000% Ez a példa bemutatja, hogyan lehet kihagyni a tizedesjegyeket a {:.0%} használatával a helyőrzőn belül.
The value is: 80% |
:_ |
Ez aláhúzásjelet ad ezerrel elválasztóként. Python 3.6+ verziótól érhető el. | print("The value is {:_}".format(1000000))
output: The value is : 1_000_000 |
:, |
Ez ezres elválasztóként vesszőt ad ki | print("The value is : {:,}".format(1000000))
output: The value is : 1,000,000 A vessző(,) hozzáadásra kerül ezerelválasztóként, ahogy a kimenetben látható. |
: |
Ez szóközt ad a pozitív számok elé | Ez a példa bemutatja, hogyan lehet szóközt vagy kitöltést adni a megadott szám elé. Az 5-ös szám a szám előtti szóköz számát jelzi.
output: The value is: 40 |
:- |
Ez mínuszjelet ad a negatív számok elé | A példa bemutatja, hogyan lehet a kimenetet egy mínusz (-) jellel elérni a szám előtt a {:-} használatával.
output: The value is: -40 |
:+ |
A pluszjellel jelezheti, hogy a szám pozitív | A példa bemutatja, hogyan kaphatja meg a kimenetet plusz (+) jellel a szám előtt a {:+} használatával.
output: The value is: +40 |
:= |
Az egyenlő a +/- jel bal oldali elhelyezésére szolgál. | A példa bemutatja, hogyan kaphatja meg a kimenetet plusz (+/-) jellel az egyenlőségjel előtt a {:=} használatával.
output: The value is -40 |
:^ |
Ez középre igazítja a végeredményt | A példa azt mutatja, hogy a {:^} használatával igazíthatja középre a szöveget. A 10-es szám 10 szóköz hozzáadására szolgál, hogy megjelenítse a középre igazított értéket az érték lecserélésekor.
output: The value 40 is a positive value Itt használhatja a 10-et, amely 10 szóközt ad hozzá a végső szöveghez, és a lecserélendő érték középre igazodik a 10 szóköz közé. A 10-es szóközök csak azért vannak hozzáadva, hogy megmutassák a lecserélt érték középre igazítását. |
:> |
Ez jobbra igazítja a végeredményt | A 10-es szóköz a (:>10) használatával kerül hozzáadásra, és a lecserélt érték jobbra igazodik.
output: The value 40 is positive value |
:< |
Ez balra igazítja a végeredményt | A 10-es szóköz a (:<10) használatával kerül hozzáadásra, és a helyettesítési érték balra igazítva.
output: The value 40 is positive value |
Osztály használata format()
Ebben a példában létrehozunk egy osztályt, és az osztály objektumát a .formátumon belül használjuk Python módszer. A helyőrzők osztálytulajdonságokra vagy az osztály objektumot használó tagokra hivatkoznak.
Példa:
Az osztály a format(c=MyClass()) formátumban kerül meghívásra. A c objektum a MyClass() osztályon belüli tulajdonságokra és metódusokra hivatkozik.
class MyClass: msg1="Guru" msg2="Tutorials" print("Welcome to {c.msg1}99 {c.msg2}!".format(c=MyClass()))
output:
Welcome to Guru99 Tutorials!
Szótár használata format()
Lehetőség van a format()-on belüli szótár használatára is, amint az az alábbi példában látható:
my_dict = {'msg1': "Welcome", 'msg2': 'Guru99'} print("{m[msg1]} to {m[msg2]} Tutorials!".format(m=my_dict))
output:
Welcome to Guru99 Tutorials!
Kitöltés változó helyettesítések
A string.format() metódussal a karakterláncon belüli helyőrzők használatával kiegészítést és szóközt adhat hozzá.
Példa:
Az alábbi példában helyet ad a helyőrzőn belül a format() használatával. Szóköz hozzáadásához meg kell adnia a szóközök számát a kettőspont (:) utáni zárójelben. Tehát a helyőrző így fog kinézni: {:5}.
print("I have {:5} dogs and {:5} cat".format(2,1))
output:
I have 2 dogs and 1 cat
A helyőrzőn belül is megadhatja az indexet, például: {0:5}, ahol a 0 a formátumon belüli első értékre utal.
print("I have {0:5} dogs and {1:5} cat".format(2,1))
output:
I have 2 dogs and 1 cat
Összegzésként
- Python A string osztály a format() nevű fontos beépített parancsot ad nekünk, amely segít lecserélni, helyettesíteni vagy átalakítani a karakterláncot olyan helyőrzőkkel, amelyek az utolsó karakterláncban érvényesek.
- A karakterlánc-modulon belüli helyőrzők Python zárójelben vannak megadva, pl. „Üdvözöljük a Guru99-ben {}”.format('value here').
- A helyőrző lehet üres {}, vagy tartalmazhat változót pl. {name} számára, vagy lehet számindex is, pl. {0}, {1} stb.
- Használhatja a String formázást Python belső helyőrzők, amelyek segíthetnek kitölteni, középre igazítani, és segíthetnek a számformázásban is.