Python String format() Selitä ESIMERKKEJÄ

⚡ Älykäs yhteenveto

Python String format() on sisäänrakennettu metodi, joka korvaa aaltosulkeissa olevat paikkamerkit mallimerkkijonossa annetuilla arvoilla. Paikkamerkit hyväksyvät tyhjät aaltosulkeet, sijainti-indeksit tai avainsanojen nimet ja tukevat numero-, tasaus- ja täyttömuotomäärittelijöitä lopullisessa tulosteessa.

  • 🔤 Paikkamerkit: Aaltosulkeet {} merkitsevät, mihin arvot tulevat — tyhjät, numeroidut {0} tai nimetyt {name}.
  • 🔢 Sijainti ja avainsana: format() täyttää tyhjät aaltosulkeet järjestyksessä, indeksisijainnin mukaan tai avainsanojen nimien vastaavuuksien perusteella.
  • 🎛️ Muotomääritteet: Kaksoispiste lisää koodeja, kuten {:d}, {:b}, {:.2f} ja {:x} desimaali-, binääri-, kiinteän pilkun ja heksadesimaalitulosteelle.
  • ↔️ Tasaus ja täyttö: Keskitä teksti leveyden mukaan numerot, joissa on {:^10} tai {:,}, lisää riviväli ja lisää tuhaterottimet.
  • 🧱 Esineet ja sanakirjat: Paikkamerkit lukevat luokan attribuutteja {c.attr}-komennolla ja sanakirjan arvoja {m[key]}-komennolla.
  • 🤖 AI-apu: Tekoälykoodausavustajat luovat format()-kutsuja ja f-merkkijonojen vastineita selkokielisistä kehotteista.

Python Merkkijonomuoto()

Mikä on Python Merkkijonomuoto()?

Python Merkkijonomuoto() on funktio, jota käytetään korvaamaan, korvaamaan tai muuttamaan merkkijono paikkamerkeillä, joiden lopullisessa merkkijonossa on kelvollisia arvoja. Se on sisäänrakennettu toiminto Python merkkijonoluokka, joka palauttaa muotoillun merkkijonon tulosteena. Merkkijonon sisällä olevat paikkamerkit on määritelty kiharahakasulkeissa.

Esimerkiksi "Tervetuloa" Guru99 {}”.format('arvo tähän').

Format()-funktion syntaksi sisään Python

templatestring.format(val1, val2...)

parametrit

arvo1, arvo2 … : Arvot, jotka on korvattava annetussa mallimerkkijonossa, jossa on paikkamerkit kiharaina hakasulkeina {}. Paikkamerkit voivat olla merkkijonoa, avain/arvo-paria, kokonaislukuja, liukulukuja, merkkejä jne.

Palautusarvo

Se palauttaa viimeisen merkkijonon, ja kelvolliset arvot korvataan kihareissa suluissa annettujen paikkamerkkien tilalla.

Paikkamerkit

Mallin merkkijonon paikkamerkit esitetään kaarevilla suluilla, esim. {}. Paikkamerkki voi olla tyhjä {}, tai siinä voi olla muuttuja esim. {nimi} tai siinä voi olla numeroindeksi esim. {0}, {1} jne.

Kuinka merkkijonomuoto() toimii?

Python Merkkijonomuoto() menetelmä tarkistaa alkuperäiset merkkijonot paikkamerkkien varalta. Paikkamerkit voivat olla tyhjiä kaarisulkuja ({}), sijaintiargumentteja eli merkkijonossa voi olla paikkamerkkejä, joiden indeksi on 0, 1 esim. {0}, {1} jne.

Avainsanaargumenteissa muuttujan nimi on hakasulkeissa esim. {name}, {age}. Tyhjien kiharasulkujen tapauksessa muodon arvot korvataan kaarisulkeissa järjestyksessä.

Ensimmäinen arvo korvataan ensimmäisellä tyhjällä hakasulkeella, jota seuraa seuraava. Paikkaargumenttien kohdalla indeksi alkaa 0:sta ja niin edelleen. Arvot ovat saatavilla pilkuilla ja nollalla erotettunath arvo osoittaa ensimmäiseen arvoon muodon sisällä ja niin edelleen.

Avainsana-argumenteille, eli kun käytät muuttujaa paikkamerkkien sisällä, voit määrittää muodon sisällä haluamasi arvojärjestyksen.

Järjestyksellä ei ole tässä väliä, koska arvot korvataan format(:ssa) olevan muuttujan nimen perusteella. Tässä on muutamia esimerkkejä siitä, kuinka merkkijonon sisällä olevia paikkamerkkejä voidaan käyttää tyhjinä, sijaintikohtaisina ja avainsanoja tai muuttujia käyttämällä.

Esimerkki: Tyhjä paikkamerkki korvataan merkkijonoarvolla

Alla olevassa esimerkissä merkkijonossa on tyhjät hakasulkeet ({}). Muotoille annettu arvo korvataan kiharahakasulkeissa ({}).

Arvo, jonka haluamme korvata, on merkkijono.

Esimerkiksi:

Merkkijonomuotoilun käyttäminen Python, haluamme korvata aaltosulkeet ({}) merkkijonoarvolla. Arvo annetaan funktiolle format(“Guru99”). Suoritettaessa aaltosulkeet {} korvataan Guru99, ja saat viimeisen merkkijonon nimellä Tervetuloa Guru99 opetusohjelmaa.

print ("Welcome to {} tutorials".format("Guru99"))

lähtö:

Welcome to Guru99 tutorials

Esimerkki: Tyhjä paikkamerkki korvattu numeerisella arvolla

Alla olevassa esimerkissä haluamme, että numeerinen arvo korvataan alkuperäisen merkkijonon sisällä. Hakasulkeet ({}) lisätään kohtaan, jossa tarvitset numeerista arvoa. Kun se suoritetaan, tyhjät hakasulkeet ({}) korvataan numeerisella arvolla.

Esimerkiksi:

Voit myös käyttää format()-toimintoa numeroiden lisäämiseen merkkijonoon. Esimerkki näyttää, kuinka tyhjä paikkamerkki {} korvataan numerolla 99, joka on läsnä format() sisällä.

print ("Welcome to Guru{} Tutorials".format("99"))

lähtö:

Welcome to Guru99 Tutorials

Esimerkki: Muuttujan tai avainsanan argumenttien käyttäminen paikkamerkin sisällä

On myös mahdollista käyttää muuttujia kiharasuluissa alla olevan esimerkin mukaisesti. Muuttujat määritellään format() sisällä. Siksi, kun se suoritetaan, muuttujalle määritetty arvo korvataan alkuperäisen merkkijonon sisällä.

Esimerkiksi:

Voit käyttää muuttujia aaltosulkeissa, esimerkiksi {name} {num}. Nimi- ja numeromuuttujien arvot ovat saatavilla formaatin sisällä, eli format(name=”Guru”, num=”99”). name- ja num-kentille annetut arvot korvataan {name}- ja {num}-kenttien sisällä.

print ("Welcome to {name}{num} Tutorials".format(name="Guru", num="99"))

lähtö:

Welcome to Guru99 Tutorials

Esimerkki: Indeksi- tai sijaintiargumenttien käyttäminen paikkamerkin sisällä

Arvot voidaan korvata käyttämällä indeksejä, kuten 0, 1, 2 paikkamerkkien sisällä. Arvo valitaan järjestyksessä muodossa(), kuten alla olevassa esimerkissä näkyy.

Esimerkiksi:

print ("Welcome to {0}{1} Tutorials".format("Guru","99"))

lähtö:

Welcome to Guru99 Tutorials

Esimerkki: Useiden paikkamerkkien käyttäminen merkkijonon sisällä

Tässä esimerkissä aiomme käyttää useita tyhjiä paikkamerkkejä.

Esimerkiksi:

Esimerkissä käytetyssä merkkijonossa on useita tyhjiä paikkamerkkejä, ja jokainen paikkamerkki viittaa arvoon muodossa format() . Ensimmäinen arvo korvataan ensimmäisellä paikkamerkillä ja niin edelleen.

print ("{} is {} new kind of {} experience!".format("Guru99", "totally","learning"))

lähtö:

Guru99 is totally new kind of learning experience!

Muotoilu paikkamerkkien sisällä

Olet nähnyt, että paikkamerkki voi olla tyhjä, muuttujalla tai indeksillä. On myös mahdollista, että voit hakea Python Merkkijonomuotoilu paikkamerkin sisällä.

Tässä on luettelo formaateista

muodostuu Tuotetiedot esimerkki
:d Se antaa tulosteen desimaalimuodossa, kun sitä käytetään paikkamerkin sisällä print("The binary to decimal value is : {:d}".format(0b0011))

lähtö:

The binary to decimal value is  : 3
:b Se antaa tulosteen binäärimuodossa, kun sitä käytetään paikkamerkin sisällä print("The binary value is : {:b}".format(500))

lähtö:

The binary value is : 111110100
:e Se antaa tulosteen tieteellisessä muodossa, kun sitä käytetään paikkamerkin sisällä, eksponentti e tulosteessa on pieniä kirjaimia. print("The scientific value is : {:e}".format(40))

lähtö:

The scientific format value is : 4.000000e+01
:E Se antaa tulosteen tieteellisessä muodossa, kun sitä käytetään paikkamerkin sisällä, eksponentti E tulosteessa on isoja kirjaimia print("The scientific value is : {:E}".format(40))

lähtö:

The scientific value is : 4.000000E+01
:f Tämä tulostaa kiinteän pisteen numeromuodon. Oletuksena saat minkä tahansa luvun tulosteen kuudella desimaalilla. Jos tarvitset enintään 2 desimaalin tarkkuutta, käytä sitä. 2f eli. piste (.) 2f:n edessä print("The value is : {:f}".format(40))

lähtö:

The value is  : 40.000000

Esimerkki: Näyttää tulosteen enintään 2 desimaalin tarkkuudella.

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

lähtö:

The value is: 40.00
:o Tämä tulostaa oktaalimuodon print("The value is : {:o}".format(500))

lähtö:

The value is  : 764
:x Tämä tulostaa hex-muodon pienillä kirjaimilla print("The value is : {:x}".format(500))

lähtö:

The value is  : 1f4
:X Tämä tulostaa heksadesimaalimuodon isoilla kirjaimilla. print("The value is : {:X}".format(500))

lähtö:

The value is  : 1F4
:n Tämä tulostaa numeromuodon. print("The value is : {:n}".format(500.00))

lähtö:

The value is  : 500
:% Tämä antaa tulosteen prosenttimuodossa.
Oletuksena se antaa 6 desimaalin tarkkuudella prosentuaalista tulosta, jos et halua desimaaliarvoa, voit käyttää pistettä 0:lla eli (:.0%).
print("The value is : {:%}".format(0.80))

lähtö:

The value is  : 80.000000%

Tämä esimerkki näyttää, kuinka desimaalit ohitetaan käyttämällä {:.0%} paikkamerkkiä.

print("The value is : {:.0%}".format(0.80))
lähtö:

The value is: 80%
:_ Tämä tulostaa alaviivan tuhannen erottimena. Se on saatavilla python 3.6+ -versiosta. print("The value is {:_}".format(1000000))

lähtö:

The value is  : 1_000_000
:, Tämä tulostaa pilkun tuhansien erottimena print("The value is : {:,}".format(1000000))

lähtö:

The value is  : 1,000,000

Pilkku(,) lisätään tuhannen erottimena tulosteen mukaisesti.

: Tämä lisää välilyönnin ennen positiivisia lukuja Tämä esimerkki näyttää, kuinka välilyönti tai täyttö lisätään annettuun numeroon. Numero 5 ilmaisee haluamasi tilamäärän ennen numeroa.

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

lähtö:

The value is:    40
:- Tämä lisää miinusmerkin negatiivisten lukujen eteen Esimerkki näyttää, kuinka tulos saadaan miinusmerkillä (-) ennen numeroa käyttämällä {:-}.

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

lähtö:

The value is: -40
:+ Voit käyttää plusmerkkiä osoittamaan, että luku on positiivinen Esimerkki näyttää, kuinka tulos saadaan plus (+) -merkillä ennen numeroa käyttämällä {:+}.

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

lähtö:

The value is: +40
:= Tasa-arvoa käytetään sijoittamaan +/--merkki vasemmalle puolelle. Esimerkki näyttää, kuinka tulos saadaan plusmerkillä (+/-) ennen yhtäläisyysmerkkiä käyttämällä {:=}.

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

lähtö:

The value is -40
:^ Tämä kohdistaa lopullisen tuloksen keskelle Esimerkki osoittaa, että käytät {:^} tasaamaan tekstin keskelle. Numeroa 10 käytetään lisäämään 10 välilyöntiä näyttämään keskelle tasattu arvo, kun arvo korvataan.

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

lähtö:

The value     40     is a positive value

Tässä voit käyttää 10:tä, joka lisää 10 välilyöntiä lopulliseen tekstiin, ja korvattava arvo tasataan keskelle 10 välilyönnin väliin. Välilyönnit 10 lisätään vain näyttämään korvatun arvon keskikohdan.

:> Tämä kohdistaa lopullisen tuloksen oikealle Välilyönti 10 lisätään käyttämällä (:>10), ja korvattu arvo tasataan oikealle.

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

lähtö:

The value         40 is positive value
:< Tämä tasoittaa lopullisen tuloksen vasemmalle Välilyönti 10 lisätään käyttämällä (:<10), ja arvo korvaa tasataan vasemmalle.

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

lähtö:

The value 40         is positive value

Luokan käyttäminen muodossa ()

Tässä esimerkissä luomme luokan ja käytämme luokan objektia .formaatin sisällä Python menetelmä. Paikkamerkit viittaavat luokan ominaisuuksiin tai jäseniin käyttämällä luokkaobjektia.

Esimerkiksi:

Luokka kutsutaan muodossa (c=MyClass()). Objektilla c on viittaus luokan MyClass() ominaisuuksiin ja menetelmiin.

class MyClass:
    msg1="Guru"
    msg2="Tutorials"   

print("Welcome to {c.msg1}99 {c.msg2}!".format(c=MyClass()))

lähtö:

Welcome to Guru99 Tutorials!

Sanakirjan käyttäminen muodossa()

On myös mahdollista käyttää sanakirjaa format() sisällä alla olevan esimerkin mukaisesti:

my_dict = {'msg1': "Welcome", 'msg2': 'Guru99'}
print("{m[msg1]} to {m[msg2]} Tutorials!".format(m=my_dict))

lähtö:

Welcome to Guru99 Tutorials!

Täytemuuttujien vaihdot

String.format()-metodin avulla voit lisätä täyttöä ja välilyöntiä käyttämällä merkkijonon sisällä olevia paikkamerkkejä.

Esimerkiksi:

Alla olevassa esimerkissä lisää tilaa paikkamerkkiin käyttämällä muotoa (). Voit lisätä välilyöntejä määrittämällä välilyöntien lukumäärän kaksoispisteen (:) jälkeen olevissa suluissa. Joten paikkamerkki näyttää tältä {:5}.

print("I have {:5} dogs and {:5} cat".format(2,1))

lähtö:

I have     2 dogs and     1 cat

Voit myös antaa indeksin paikkamerkin sisällä, esimerkiksi: {0:5}, jossa 0 viittaa ensimmäiseen muodon sisällä olevaan arvoon.

print("I have {0:5} dogs and {1:5} cat".format(2,1))

lähtö:

I have     2 dogs and     1 cat

UKK

f-stringit, lisätty Python 3.6, upottaa lausekkeita suoraan ja toimii yleensä nopeammin. format()-metodi toimii edelleen vanhemmissa Python versiot ja milloin mallipohja tulee muuttujasta, tiedostosta tai käyttäjän syötteestä.

%-operaattori käyttää printf-tyylisiä symboleja, kuten %s ja %d, kun taas format() käyttää aaltosulkeisiin perustuvia paikkamerkkejä, jotka tukevat nimiä, indeksejä ja monipuolisempia määrittelijöitä. Sen selkeämpi uudelleenjärjestämisen ja asettelun käsittely on syy siihen, miksi format() korvasi %-operaattorin nykykoodissa.

Double hammasraudat paetakseen niitä. Typing kaksi aloittavaa aaltosulkua tulostaa yhden literaaliaaltoaaltoaaltoaaltoaaltoaaltoaaltoaaltoaaltoaalto ja kaksi sulkevaa aaltosulkuaalto ...

Puuttuva sijaintiarvo aiheuttaa IndexError-virheen, ja puuttuva avainsana tai sanakirjan nimi aiheuttaa KeyError-virheen. Useampien arvojen kuin paikkamerkkien välittäminen on sallittua, ja ylimääräiset jätetään huomiotta, joten vain puuttuvat viittaukset, eivät ylimääräiset, aiheuttavat virheen.

format()-metodi toimii Python 2.6 ja jokainen Python 3. julkaisu. Automaattinen kenttien numerointi, jossa aaltosulkeet pysyvät tyhjinä {0} {1}:n sijaan, tarvitsee Python 2.7 tai 3.1 ja uudemmat.

Ei. Python Merkkijonot ovat muuttumattomia, joten format() muodostaa ja palauttaa upouuden merkkijonon jättäen mallineen muuttumattomana. Sijoita tulos muuttujaan, esimerkiksi message = template.format(arvo), säilyttääksesi muotoillun tekstin myöhempää käyttöä varten.

Koneoppimiskoodi käyttää format()-funktiota luettavien lokien luomiseen, kielimallien kehotemallien kokoamiseen ja mittareiden, kuten tarkkuuden, tulostamiseen kiinteillä desimaaliluvuilla. Selkeästi muotoiltu tuloste helpottaa kokeiden ja malliraporttien vertailua.

Kyllä. GitHub Copilot täydentää format()-kutsuja ja niiden määrittelijöitä automaattisesti lyhyestä kommentista, joka kuvaa haluamasi tulosteen. Agenttien tekoälyavustajat menevät pidemmälle muuntamalla format()-kutsut f-merkkijonoiksi, korjaamalla tasauksen ja suorittamalla testisi automaattisesti.

Tiivistä tämä viesti seuraavasti: