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.

print("The value is : {:.2f}".format(40))

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.

print("The value is : {:.0%}".format(0.80))
Utgang:

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.

print("The value is: {:5}".format(40))

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 {:-}.

print("The value is: {:-}".format(-40))

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 {:+}.

print("The value is: {:+}".format(40))

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 {:=}.

print("The value is {:=}".format(-40))

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.

print("The value {:^10} is positive value".format(40))

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.

print("The value {:>10} is positive value".format(40))

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.

print("The value {:<10} is positive value".format(40))

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.

Oppsummer dette innlegget med: