Python String format() Forklar med EKSEMPLER
⚡ Smart oppsummering
Python String format() er en innebygd metode som erstatter plassholdere for krøllparenteser i en malstreng med angitte verdier. Plassholdere godtar tomme parenteser, posisjonsindekser eller nøkkelordnavn, og støtter spesifikatorer for tall, justering og utfyllingsformat for det endelige resultatet.

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
