Hva er Python String format ()?
Python String format () er en funksjon som brukes til å erstatte, erstatte eller konvertere strengen med plassholdere med gyldige verdier i den endelige strengen. Det er en innebygd funksjon av Python-strengklassen, som returnerer den formaterte strengen som en utgang. Plassholderne inne i strengen er definert i krøllete parenteser.
For eksempel "Velkommen til Guru99 {}". Format ('verdi her').
I denne opplæringen lærer du:
- Hva er Python String format ()?
- Syntaks for format () -funksjonen i Python
- Hvordan fungerer strengformat ()?
- Eksempel: Tom plassholder erstattet med en strengverdi
- Eksempel: Tom plassholder erstattet med en numerisk verdi
- Eksempel: Bruk av argumenter for variabler eller søkeord inne i plassholderen
- Eksempel: Bruk av indeks- eller posisjonsargumenter inne i plassholderen
- Formatering på plassholdere
- Bruke klasse med format ()
- Bruke ordbok med format ()
- Polstring Variable erstatninger
Syntaks for format () -funksjonen i Python
templatestring.format(val1, val2… )
Parametere
val1, val2 ...: Verdiene som må erstattes i den gitte malstrengen som har plassholdere i form av krøllete parenteser {}. Plassholderne kan være en streng, nøkkel / verdipar, heltall, flytende tall, tegn, etc.
Returverdi:
Den returnerer den endelige strengen, med gyldige verdier erstattet i stedet for plassholderne gitt i krøllete parenteser.
Plassholdere
Plassholderne i malstrengen er representert ved hjelp av krøllete parenteser, f.eks. {}. Plassholderen kan være tom {}, eller den kan ha en variabel for f.eks. {Navn}, eller den kan ha en nummerindeks, f.eks. {0}, {1} osv.
Hvordan fungerer strengformat ()?
Python String format () -metoden skanner de originale strengene for plassholdere. Plassholderne kan være tomme krøllete parenteser ({}), posisjonsargumenter, dvs. at strengen kan ha plassholdere med indeks 0, 1 for f.eks. {0}, {1} osv.
For søkeordargumenter vil variabelnavnet være tilstede i krøllete parenteser for f.eks. {Name}, {age}. I tilfelle tomme krøllete parenteser, vil verdiene fra formatet bli erstattet i krøllete parenteser i rekkefølge.
Den første verdien erstattes med den første tomme krøllete parentesen, etterfulgt av den neste. For posisjonsargumenter starter indeksen fra 0 og så videre. Verdiene vil være tilgjengelige i format adskilt med komma, og 0 - verdien vil peke på 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, da verdiene blir erstattet basert på variabelnavnet som er tilstede i formatet (). Her er noen eksempler på hvordan du kan bruke plassholdere i en streng som tomme, posisjonelle og ved hjelp av nøkkelord eller variabler.
Eksempel: Tom plassholder erstattet med en strengverdi
I eksemplet nedenfor har strengen tomme krøllete parenteser ({}). Verdien gitt til formatet blir erstattet i de krøllete parentesene ({}).
Verdien vi vil erstatte er en streng.
Eksempel:
Ved å bruke strengformatering i Python vil vi at krøllete parenteser ({}) skal erstattes med en strengverdi. Verdien er gitt til formatet ("Guru99"). Ved utførelse erstattes de krøllete parentesene {} med Guru99, og du får den siste strengen som Welcome to Guru99 tutorials.
print ("Welcome to {} tutorials".format("Guru99"))
Produksjon:
Welcome to Guru99 tutorials
Eksempel: Tom plassholder erstattet med en numerisk verdi
I eksemplet nedenfor vil vi at den numeriske verdien skal erstattes inne i den opprinnelige strengen. De krøllete parentesene ({}) legges til stedet der du trenger den numeriske verdien. Når den kjøres, erstattes de tomme krøllete parentesene ({}) med den numeriske verdien.
Eksempel:
Du kan også bruke format () for å sette inn tall i strengen. Eksemplet viser hvordan du erstatter den tomme plassholderen {} med nummer 99 i formatet ().
print ("Welcome to Guru{} Tutorials".format("99"))
Produksjon:
Welcome to Guru99 Tutorials
Eksempel: Bruk av argumenter for variabler eller søkeord inne i plassholderen
Det er også mulig å bruke variabler i krøllete parenteser, som vist i eksemplet nedenfor. Variablene er definert i formatet (). Derfor, når den kjøres, erstattes verdien som er tildelt variabelen i den opprinnelige strengen.
Eksempel:
Du kan bruke variabler i krøllete parenteser, for eksempel {name} {num}. Verdiene for name og num variable er tilgjengelige i formatet dvs. format (name = "Guru", num = "99"). Verdiene gitt til navn og num blir erstattet i {name} og {num}.
print ("Welcome to {name}{num} Tutorials".format(name="Guru", num="99"))
Produksjon:
Welcome to Guru99 Tutorials
Eksempel: Bruk av indeks- eller posisjonsargumenter inne i plassholderen
Verdiene kan erstattes med indekser som 0, 1, 2 inne i plassholderne. Verdien blir plukket i rekkefølge fra formatet (), som vist i eksemplet nedenfor.
Eksempel:
print ("Welcome to {0}{1} Tutorials".format("Guru","99"))
Produksjon:
Welcome to Guru99 Tutorials
Eksempel: Bruke flere plassholdere 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 formatet (). 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"))
Produksjon:
Guru99 is totally new kind of learning experience!
Formatering på 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 bruke Python-strengformatering inne i plassholderen.
Her er listen over formater
Format | Beskrivelse | Eksempel |
---|---|---|
: d | Det vil gi utdataene i desimalformat når de brukes inne i plassholderen | print("The binary to decimal value is : {:d}".format(0b0011)) Produksjon:
The binary to decimal value is : 3 |
: b | Det vil gi utdataene i binært format når de brukes inne i plassholderen | print("The binary value is : {:b}".format(500)) Produksjon:
The binary value is : 111110100 |
: e | Det vil gi utdataene i vitenskapelig format når de brukes inne i plassholderen, og eksponenten e i utgangen vil være små bokstaver. | print("The scientific value is : {:e}".format(40)) Produksjon:
The scientific format value is : 4.000000e+01 |
: E | Det vil gi utdataene i vitenskapelig format når de brukes inne i plassholderen, eksponenten E i utgangen vil være stor | print("The scientific value is : {:E}".format(40)) Produksjon:
The scientific value is : 4.000000E+01 |
: f | Dette vil gi et fastpunktsnummerformat. Som standard får du utdata fra et hvilket som helst tall med seks desimaler. Hvis du trenger opptil 2 desimaler, bruk den som. 2f dvs.… en periode (.) Foran 2f | print("The value is : {:f}".format(40)) Produksjon:
The value is : 40.000000Eksempel: Viser utdata opptil 2 desimaler. print("The value is : {:.2f}".format(40)) Produksjon:
The value is: 40.00 |
: o | Dette vil gi ut oktalt format | print("The value is : {:o}".format(500)) Produksjon:
The value is : 764 |
: x | Dette vil gi hex-format med små bokstaver | print("The value is : {:x}".format(500)) Produksjon:
The value is : 1f4 |
: X | Dette vil gi hex-format i store bokstaver. | print("The value is : {:X}".format(500)) Produksjon:
The value is : 1F4 |
: n | Dette vil sende tallformat. | print("The value is : {:n}".format(500.00)) Produksjon:
The value is : 500 |
:% | Dette vil gi utdataene i prosentformat. Som standard vil det gi 6 desimaler for prosentvis utgang, i tilfelle du ikke vil ha noen desimalverdi, kan du bruke periode med 0 dvs. (: .0%). | print("The value is : {:%}".format(0.80)) Produksjon:
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)) Produksjon:
The value is: 80% |
: _ | Dette vil gi et understrek som tusen skilletegn. Den er tilgjengelig fra python 3.6+. | print("The value is {:_}".format(1000000)) Produksjon:
The value is : 1_000_000 |
:, | Dette vil sende komma som tusenvis skilletegn | print("The value is : {:,}".format(1000000)) Produksjon:
The value is : 1,000,000Kommaet (,) legges til som tusen skilletegn som vist i utdataene. |
: | Dette vil legge til et mellomrom før eventuelle positive tall | Dette eksemplet viser hvordan du legger til plass eller polstring før det gitte nummeret. Tallet 5 angir plassantallet du vil ha før tallet. print("The value is: {:5}".format(40)) Produksjon:
The value is: 40 |
: - | Dette vil legge til et minustegn før negative tall | Eksemplet viser hvordan du får utdata med et minustegn (-) før tallet ved hjelp av {: -}. print("The value is: {:-}".format(-40)) Produksjon:
The value is: -40 |
: + | Du kan bruke plusstegnet for å indikere at tallet er positivt | Eksemplet viser hvordan du får utdata med et plusstegn (+) før tallet ved hjelp av {: +}. print("The value is: {:+}".format(40)) Produksjon:
The value is: +40 |
: = | Samme som brukes til å plassere +/- tegnet på venstre side. | Eksemplet viser hvordan du får utdataene med et plusstegn (+/-) før det er lik tegnet ved hjelp av {: =}. print("The value is {:=}".format(-40)) Produksjon:
The value is -40 |
: | Dette vil midtstille det endelige resultatet | Eksemplet viser å bruke {: ^} til å midtjustere teksten. Tallet 10 brukes til å legge til 10 mellomrom for å vise midtjustert når verdien erstattes. print("The value {:^10} is positive value".format(40)) Produksjon:
The value 40 is a positive valueHer kan du bruke 10 som vil legge til 10 mellomrom i den endelige teksten, og verdien som skal erstattes vil være midtjustert mellom de 10 mellomrommene. Mellomromene på 10 er lagt til bare for å vise midtjusteringen av den erstattede verdien. |
:> | Dette vil rette inn det endelige resultatet | Mellomrom på 10 legges til ved bruk av (:> 10), og verdien som erstattes, er høyrejustert. print("The value {:>10} is positive value".format(40)) Produksjon:
The value 40 is positive value |
: < | Dette vil etterlate det endelige resultatet | Mellomrom på 10 legges til ved hjelp av (: <10), og verdien som erstattes blir venstrejustert. print("The value {:<10} is positive value".format(40)) Produksjon:
The value 40 is positive value |
Bruke klasse med format ()
I dette eksemplet lager vi en klasse og bruker objektet til klassen i .format Python-metoden. Plassholderne vil henvise til klasseegenskaper eller medlemmer ved hjelp av klasseobjektet.
Eksempel:
Klassen kalles inne i formatet (c = MyClass ()). Objektet c vil ha referanse til egenskapene og metodene i klasse MyClass ().
class MyClass:msg1="Guru"msg2="Tutorials"print("Welcome to {c.msg1}99 {c.msg2}!".format(c=MyClass()))
Produksjon:
Welcome to Guru99 Tutorials!
Bruke ordbok med format ()
Det er også mulig å bruke ordbok i formatet () som vist i eksemplet nedenfor:
my_dict = {'msg1': "Welcome", 'msg2': 'Guru99'}print("{m[msg1]} to {m[msg2]} Tutorials!".format(m=my_dict))
Produksjon:
Welcome to Guru99 Tutorials!
Polstring Variable erstatninger
Ved hjelp av string.format () -metoden kan du legge til polstring, mellomrom ved å bruke plassholdere inne i strengen.
Eksempel:
I eksemplet nedenfor vil du legge til plass inne i plassholderen ved hjelp av formatet (). For å legge til plass, må du spesifisere antall mellomrom i krøllete parenteser etter kolon (:). Så plassholderen vil se ut som {: 5}.
print("I have {:5} dogs and {:5} cat".format(2,1))
Produksjon:
I have 2 dogs and 1 cat
Du kan også gi indeksen inne i plassholderen for eksempel: {0: 5} der 0 vil referere til den første verdien i formatet.
print("I have {0:5} dogs and {1:5} cat".format(2,1))
Produksjon:
I have 2 dogs and 1 cat
Sammendrag
- Python-strengklasse gir oss en viktig innebygd kommando kalt format () som hjelper oss å erstatte, erstatte eller konvertere strengen med plassholdere med gyldige verdier i den endelige strengen.
- Plassholderne inne i strengmodulen Python er definert i krøllete parenteser, 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 nummerindeks, f.eks. {0}, {1} osv.
- Du kan bruke strengformatering i Python inne i plassholdere som kan bidra til å legge til polstring, midtjustering og også hjelpe med nummerformatering.