Python String format() Forklar med EKSEMPLER
Hva er Python Strengformat()?
Python Strengformat() er en funksjon som brukes til รฅ erstatte, erstatte eller konvertere strengen med plassholdere med gyldige verdier i den siste strengen. Det er en innebygd funksjon av Python string class, som returnerer den formaterte strengen som en utdata. Plassholderne inne i strengen er definert i krรธllete parenteser.
For eksempel, ยซVelkommen til Guru99 {}โ.format('verdi her').
Syntaks for format()-funksjonen i Python
templatestring.format(val1, val2...)
Parametre
val1, val2 โฆ : Verdiene som mรฅ erstattes i den gitte malstrengen som har plassholdere i form av krรธllede parenteser {}. Plassholderne kan vรฆre en streng, nรธkkel/verdi-par, heltall, flytende tall, tegn osv.
Returverdi
Den vil returnere den siste strengen, med gyldige verdier erstattet i stedet for plassholderne gitt i krรธllede parenteser.
Plassholdere
Plassholderne i malstrengen er representert ved hjelp av krรธllede parenteser, f.eks. {}. Plassholderen kan vรฆre tom {}, eller den kan ha en variabel for f.eks. {navn} , eller den kan ha en tallindeks, f.eks. {0} , {1} osv.
Hvordan fungerer strengformat()?
Ocuco Python Strengformat() metoden vil skanne de originale strengene for plassholdere. Plassholderne kan vรฆre tomme krรธllede parenteser ({}), posisjonsargumenter dvs. strengen kan ha plassholdere med indeks 0, 1 for f.eks. {0}, {1} osv.
For sรธkeordargumenter vil variabelnavnet vรฆre tilstede innenfor de krรธllede parentesene for f.eks. {navn}, {alder}. I tilfelle av tomme parenteser, vil verdiene fra formatet bli erstattet innenfor de krรธllede parentesene i rekkefรธlge.
Den fรธrste verdien vil bli erstattet med den fรธrste tomme krรธllete parentesen, etterfulgt av den neste. For posisjonsargumenter vil indeksen starte fra 0 og sรฅ videre. Verdiene vil vรฆre tilgjengelige i format atskilt med komma og 0th verdi vil peke til den fรธrste verdien i formatet og sรฅ videre.
For sรธkeordargumenter, dvs. nรฅr du bruker en variabel i plassholderne dine, kan du ha rekkefรธlgen pรฅ verdiene i formatet etter behov.
Rekkefรธlgen spiller ingen rolle her siden verdiene vil bli erstattet basert pรฅ variabelnavnet som er tilstede i formatet(). Her er noen eksempler pรฅ hvordan du bruker plassholdere inne i en streng som tomme, posisjonelle og bruker nรธkkelord eller variabler.
Eksempel: Tom plassholder erstattet med en strengverdi
I eksemplet nedenfor har strengen tomme krรธllede parenteser({}). Verdien gitt til formatet vil bli erstattet innenfor de krรธllede parentesene ({}).
Verdien som vi รธnsker skal erstattes er en streng.
Eksempel:
Bruke strengformatering i Python, vi รธnsker at krรธllparentesene ({}) skal erstattes med en strengverdi. Verdien gis til format(โGuru99"). Ved utfรธrelse erstattes de krรธllparentesene {} med Guru99, og du vil fรฅ den siste strengen som Velkommen til Guru99 veiledninger.
print ("Welcome to {} tutorials".format("Guru99"))
Utgang:
Welcome to Guru99 tutorials
Eksempel: Tom plassholder erstattet med en numerisk verdi
I eksemplet nedenfor รธnsker vi at den numeriske verdien skal erstattes inne i den opprinnelige strengen. De krรธllede parentesene ({}) legges til stedet der du trenger den numeriske verdien. Nรฅr den kjรธres, erstattes de tomme krรธllede parentesene ({}) med den numeriske verdien.
Eksempel:
Du kan ogsรฅ bruke format() for รฅ sette inn tall i strengen din. Eksemplet vil vise hvordan du erstatter den tomme plassholderen {} med nummer 99 i formatet().
print ("Welcome to Guru{} Tutorials".format("99"))
Utgang:
Welcome to Guru99 Tutorials
Eksempel: Bruk av variabel- eller nรธkkelordargumenter inne i plassholderen
Det er ogsรฅ mulig รฅ bruke variabler innenfor de krรธllede parentesene, som vist i eksemplet nedenfor. Variablene er definert i format(). Derfor, nรฅr den kjรธres, erstattes verdien som er tildelt variabelen inne i den opprinnelige strengen.
Eksempel:
Du kan bruke variabler i krรธllparenteser, for eksempel {name} {num}. Verdiene for variabelen name og num er tilgjengelige i formatet, dvs. format(name=โGuru", num="99"). Verdiene gitt til name og num vil bli erstattet inni {name} og {num}.
print ("Welcome to {name}{num} Tutorials".format(name="Guru", num="99"))
Utgang:
Welcome to Guru99 Tutorials
Eksempel: Bruke indeks- eller posisjonsargumenter inne i plassholderen
Verdiene kan erstattes ved รฅ bruke indekser som 0, 1, 2 inne i plassholderne. Verdien vil bli plukket i rekkefรธlge fra formatet(), som vist i eksemplet nedenfor.
Eksempel:
print ("Welcome to {0}{1} Tutorials".format("Guru","99"))
Utgang:
Welcome to Guru99 Tutorials
Eksempel: Bruk av flere plassholdere inne i en streng
I dette eksemplet skal vi bruke flere tomme plassholdere.
Eksempel:
Strengen som brukes i eksemplet har flere tomme plassholdere, og hver plassholder vil referere til en verdi i format() . Den fรธrste verdien vil bli erstattet for den fรธrste plassholderen og sรฅ videre.
print ("{} is {} new kind of {} experience!".format("Guru99", "totally","learning"))
Utgang:
Guru99 is totally new kind of learning experience!
Formatering inne i plassholdere
Du har sett at det er mulig รฅ ha Plassholder som tom, med en variabel eller en indeks. Det er ogsรฅ mulig at du kan sรธke Python Strengformatering inne i plassholderen.
Her er listen over formater
| dannet | Tekniske beskrivelser | Eksempel |
|---|---|---|
:d |
Det vil gi utdata i desimalformat nรฅr det brukes inne i plassholderen | print("The binary to decimal value is : {:d}".format(0b0011))
Utgang: The binary to decimal value is : 3 |
:b |
Det vil gi utdata i binรฆrt format nรฅr det brukes inne i plassholderen | print("The binary value is : {:b}".format(500))
Utgang: The binary value is : 111110100 |
:e |
Det vil gi utdata i vitenskapelig format nรฅr det brukes inne i plassholderen, eksponenten e i utdata vil vรฆre smรฅ bokstaver. | print("The scientific value is : {:e}".format(40))
Utgang: The scientific format value is : 4.000000e+01 |
:E |
Det vil gi utdata i vitenskapelig format nรฅr det brukes inne i plassholderen, eksponenten E i utdataene vil vรฆre store bokstaver | print("The scientific value is : {:E}".format(40))
Utgang: The scientific value is : 4.000000E+01 |
:f |
Dette vil sende ut et fastpunktnummerformat. Som standard vil du fรฅ utdata av et hvilket som helst tall med seks desimaler. Hvis du trenger opptil 2 desimaler, bruk det som. 2f dvs. et punktum (.) foran 2f | print("The value is : {:f}".format(40))
Utgang: The value is : 40.000000 Eksempel: Viser utdata opp til 2 desimaler.
Utgang: The value is: 40.00 |
:o |
Dette vil gi ut oktalt format | print("The value is : {:o}".format(500))
Utgang: The value is : 764 |
:x |
Dette vil sende ut hex-format med smรฅ bokstaver | print("The value is : {:x}".format(500))
Utgang: The value is : 1f4 |
:X |
Dette vil sende ut hex-format med store bokstaver. | print("The value is : {:X}".format(500))
Utgang: The value is : 1F4 |
:n |
Dette vil gi ut tallformat. | print("The value is : {:n}".format(500.00))
Utgang: The value is : 500 |
:% |
Dette vil gi utdata i et prosentformat. Som standard vil det gi 6 desimaler for den prosentvise produksjonen, i tilfelle du ikke vil ha noen desimalverdi kan du bruke punktum med 0 dvs. (:.0%). |
print("The value is : {:%}".format(0.80))
Utgang: The value is : 80.000000% Dette eksemplet viser hvordan du hopper over desimalene ved รฅ bruke {:.0%} inne i plassholderen.
The value is: 80% |
:_ |
Dette vil skrive ut en understreking som tusenseparator. Den er tilgjengelig fra python 3.6+. | print("The value is {:_}".format(1000000))
Utgang: The value is : 1_000_000 |
:, |
Dette vil skrive ut komma som et tusenskilletegn | print("The value is : {:,}".format(1000000))
Utgang: The value is : 1,000,000 Kommaet(,) legges til , som tusenskilletegn som vist i utdataene. |
: |
Dette vil legge til et mellomrom fรธr eventuelle positive tall | Dette eksemplet viser hvordan du legger til mellomrom eller utfylling fรธr det gitte tallet. Tallet 5 angir mellomromtellingen du รธnsker fรธr tallet.
Utgang: The value is: 40 |
:- |
Dette vil legge til et minustegn fรธr negative tall | Eksemplet viser hvordan du fรฅr utdata med et minustegn (-) foran tallet ved รฅ bruke {:-}.
Utgang: The value is: -40 |
:+ |
Du kan bruke plusstegnet for รฅ indikere at tallet er positivt | Eksemplet viser hvordan du fรฅr utdata med et plusstegn (+) foran tallet ved รฅ bruke {:+}.
Utgang: The value is: +40 |
:= |
Lik brukes til รฅ plassere +/- tegnet pรฅ venstre side. | Eksemplet viser hvordan du fรฅr utdata med et pluss (+/-)-tegn fรธr lik-tegn ved รฅ bruke {:=}.
Utgang: The value is -40 |
:^ |
Dette vil sentrere det endelige resultatet | Eksemplet viser รฅ bruke {:^} for รฅ sentrere teksten. Tallet 10 brukes til รฅ legge til 10 mellomrom for รฅ vise senterjustert nรฅr verdien erstattes.
Utgang: The value 40 is a positive value Her kan du bruke 10 som vil legge til 10 mellomrom i den endelige teksten, og verdien som skal erstattes vil vรฆre midtstilt mellom de 10 mellomrommene. Mellomrommene pรฅ 10 legges til bare for รฅ vise senterjusteringen av den erstattede verdien. |
:> |
Dette vil hรธyrejustere det endelige resultatet | Mellomrommet pรฅ 10 legges til ved รฅ bruke (:>10), og verdien som erstattes er hรธyrejustert.
Utgang: The value 40 is positive value |
:< |
Dette vil venstrejustere det endelige resultatet | Mellomrommet pรฅ 10 legges til ved รฅ bruke (:<10), og verdien erstattes venstrejustert.
Utgang: The value 40 is positive value |
Bruke klasse med format()
I dette eksemplet lager vi en klasse og bruker objektet til klassen i .formatet Python metode. Plassholderne vil referere til klasseegenskaper eller medlemmer som bruker klasseobjektet.
Eksempel:
Klassen kalles inne i formatet(c=MyClass()). Objektet c vil ha referansen til egenskapene og metodene inne i klassen MyClass().
class MyClass:
msg1="Guru"
msg2="Tutorials"
print("Welcome to {c.msg1}99 {c.msg2}!".format(c=MyClass()))
Utgang:
Welcome to Guru99 Tutorials!
Bruke ordbok med format()
Det er ogsรฅ mulig รฅ bruke ordbok i format() som vist i eksemplet nedenfor:
my_dict = {'msg1': "Welcome", 'msg2': 'Guru99'}
print("{m[msg1]} to {m[msg2]} Tutorials!".format(m=my_dict))
Utgang:
Welcome to Guru99 Tutorials!
Utfylling av variable erstatninger
Ved รฅ bruke string.format()-metoden kan du legge til polstring, mellomrom ved รฅ bruke plassholdere inne i strengen.
Eksempel:
I eksemplet nedenfor vil det legges til plass inne i plassholderen ved รฅ bruke formatet(). For รฅ legge til mellomrom, mรฅ du spesifisere antall mellomrom innenfor krรธllede parenteser etter kolon(:). Sรฅ plassholderen vil se ut som {:5}.
print("I have {:5} dogs and {:5} cat".format(2,1))
Utgang:
I have 2 dogs and 1 cat
Du kan ogsรฅ gi indeksen inne i plassholderen for eksempel: {0:5} hvor 0 vil referere til den fรธrste verdien i formatet.
print("I have {0:5} dogs and {1:5} cat".format(2,1))
Utgang:
I have 2 dogs and 1 cat
Sammendrag
- Python string class gir oss en viktig innebygd kommando kalt format() som hjelper oss รฅ erstatte, erstatte eller konvertere strengen med plassholdere med gyldige verdier i den siste strengen.
- Plassholderne inne i strengmodulen Python er definert i krรธllparenteser, f.eks. ยซVelkommen tilยป Guru99 {}โ.format('verdi her').
- Plassholderen kan vรฆre tom {}, eller den kan ha en variabel for f.eks. {navn} , eller den kan ha en tallindeks, f.eks. {0} , {1} osv.
- Du kan bruke strengformatering i Python inne i plassholdere som kan bidra til รฅ legge til utfylling, senterjustering og ogsรฅ hjelpe med tallformatering.
