Oavsett om det är en databasfråga eller resultat av matematiska operationer, erbjuder Python -strängformatmetoden ett mer dynamiskt och tilltalande sätt att presentera resultat för en användare.
Låt oss ta en titt på hur str.format () funktionen fungerar i Python. Du får också reda på hur du kan använda detta format i dina egna program.
Hur fungerar Python String -format ()?
Python str.format () funktion kan du infoga dina resultat var som helst i en sträng.
Det fungerar genom att fördela utrymme för dina resultat inom strängen med hjälp av lockiga hängslen. Det skriver sedan din utmatning till den positionen med hjälp av formatera() metod.
Strängarna utanför hängslen är vad du kallar bokstavliga texter.
Så här använder du Python String -format () -metod
De str.format () funktion accepterar ett värde och en valfri strängformatspecifikator.
Så här ser den allmänna syntaxen ut:
str.format (värde, format_spec)
Låt oss nu ta en titt på mer praktiska exempel på hur du använder denna Python -strängmetod.
1. Infoga ett värde i en specifik position
Här är ett grundläggande exempel på hur du sätter in ett värde i en sträng med str.format () metod:
Kostnad = 45
formattedMethod = "Denna vara kostar bara {} dollar"
print (formattedMethod.format (kostnad))
Output: Denna vara kostar bara 45 dollar
Ovanstående kod är densamma som:
formattedMethod = "Denna vara kostar bara {} dollar"
print (formattedMethod.format (45))
Output: Denna vara kostar bara 45 dollar
2. Sätt in flera utgångar i en sträng
Du kan också infoga flera resultat i en sträng. Här är hur:
y = 7*8
f = 5+5
g = 0
a = "Värdet på y är {}, medan f är {}. Ingen kan se {} ". -Formatet (y, f, g)
skriva ut (a)
Output: Värdet på y är 56, medan f är 10. Ingen kan se 0
3. Använd Escape Braces för att placera utgångar i dedikerade hängslen
Om du behöver placera något av resultaten i en lockig konsol är det enkelt. Du behöver bara introducera ytterligare två rymande hängslen.
Säg till exempel att du vill y i en dedikerad lockig hängslen:
a = "Värdet på y är {{{}}} medan f är {}. Ingen kan se {} ". -Formatet (y, f, g)
skriva ut (a)
Utdata: värdet på y är {56}, medan f är 10. Ingen kan se 0
4. Utmatningsvärden från en lista
Du kan välja specifika värden från en lista och infoga dem i en sträng:
myList = [10, 2, 4, 6]
print (("Den första är {} och den tredje är {}"). format (myList [0], myList [2]))
Utgång: Den första är 10 och den tredje är 4
För att undvika upprepning inom .formatera() inom parentes kan du ställa in formatspecifikatorn för att istället peka på en enda variabel.
Så här gör du:
myList = [10, 2, 4, 6]
print (("Den första är {yourList [0]} och den tredje är {yourList [2]}"). format (yourList = myList))
Utgång: Den första är 10 och den tredje är 4
Ovanstående instans gäller även andra exempel som vi har behandlat tidigare. Så du kan leka med dem med det här tricket.
5. Infoga värden från en ordbok
På samma sätt som du gjorde i föregående avsnitt kan du använda str.format () metod för att infoga ett ordboksvärde i en sträng:
myDiction = {"Ten": 10, "Two": 2, "Four": 4, "Six": 6}
print (("Den första är {} och den tredje är {}"). format (myDiction ["Ten"], myDiction ["Four"]))
Utgång: Den första är 10 och den tredje är 4
Relaterad: Hur man konverterar en lista till en ordlista i Python
Och om du vill använda tricket från föregående avsnitt:
myDiction = {"Ten": 10, "Two": 2, "Four": 4, "Six": 6}
print (("Den första är {Ten} och den tredje är {Four}"). format (** myDiction))
Utgång: Den första är 10 och den tredje är 4
Du kan också skriva ovanstående kod som:
print (("Den första är {d [Ten]} och den tredje är {d [Four]}"). format (d = myDiction))
Utgång: Den första är 10 och den tredje är 4
6. Sätt in funktionens utmatning i en sträng
Om du vill visa utdata från en funktion i en sträng:
def difNums (a, b):
om a> b:
returnera a - b
annan:
return return "Du kan inte subtrahera {} från {} med denna funktion" .format (a, b)
print (("Hej där: {}"). format (difNums (2, 6)))
Utmatning: Hej där: Du kan inte subtrahera 2 från 6 med den här funktionen
Använda Python String Format Specifiers
Med formatspecifikatorn kan du välja hur ditt format kommer fram. Som nämnts tidigare är det en valfri parameter som följer med str.format ().
Med det här alternativet kan du justera din produktion, klippa långa strängar, gruppera utgångar eller runda ett heltal till ett visst antal betydande siffror och ännu mer.
Du skriver ofta formatspecifikatörerna inuti de lockiga hängslena. Men du kan också ange dem uttryckligen inne i .formatera() parentes.
Låt oss gå vidare och se några av dess användningsfall.
7. Justera strängutmatning
Du kan använda den större (>) tecken för att justera en strängutmatning till höger:
print ("Hej {:> 15}". format (12734589))
Utgång: Hej 12734589
Du kan också anpassa din text till mitten om du vill:
print ("Hej {:^15}". format (12734589))
Utgång: Hej 12734589
Låt oss formatera ovanstående utdata ytterligare. Till exempel kan du inkludera understrykningar för att se vadderingen på vardera sidan av din strängutgång:
print ("Hej {: _^15}". format (12734589))
Utgång: Hej ___12734589____
Men som tidigare nämnts kan du uttryckligen ange formatspecificatorn som en parameter inom str.format ().
Så den tidigare koden ser ut så här i så fall:
print ("Hej {: {g}}". format (12734589, g = "_^15"))
Utgång: Hej ___12734589____
Skriv om de andra exemplen med ovanstående alternativ.
8. Formatera utdata till ett specifikt antal signifikanta siffror
Du kanske också vill returnera ett visst antal betydande siffror för en beräkning med hjälp av .formatera() metod.
Exempelkoden nedan avrundar till exempel resultatet av den matematiska operationen till ett signifikant decimaltal:
calcprofitPerc = ((45 - 20)/45)*100
formattedOutput = "Vår vinst på detta är {vinst: .1f}%"
print (formattedOutput.format (profit = calcprofitPerc))
Output: Vår vinst på detta är 55,6%
9. Avkorta långa strängar
Även om avkortning av en text kan verka opraktisk, kan du inte veta var du kan behöva den.
Så här skär du av en del av din strängutmatning med str.format () fungera:
print (("Avkorta detta till de tre första alfabet: {: .3}"). format ("idowuomisola"))
Utmatning: Avkorta detta till de tre första alfabeten: ido
10. Separat grupp av siffror med hjälp av kriterier
Du kan skilja en grupp av siffror med hjälp av ett understreck eller ett kommatecken:
print ("Avgränsat med understrykning: {: {g}}". format (12734589, g = "_"))
print ("Skilt med komma: {: {g}}". format (12734589, g = ","))
Produktion:
Avgränsat med understrykning: 12_734_589
Separerat med komma: 12 734 589
Relaterad:Hur man delar en sträng i Python
Dessutom kan du ange den grupp av nummer du vill behandla med dess nyckel:
print ("Första siffrorna med understrykning: {0: {g}}". format (12734589, 123674, 662772, g = "_"))
print ("Tredje siffror med kommatecken: {2: {g}}". format (12734589, 123674, 662772, g = ","))
Produktion:
Första siffrorna med understrykning: 12_734_589
Tredje tal med komma: 662.772
Presentera utdata fint med Python String -format () -metod
Ett av de sätt du kan få ditt program att sticka ut är hur du presenterar resultat och frågor. Utan tvekan erbjuder Python -strängformatmetoden ett renare sätt att mata ut resultat. Till skillnad från den tidigare modulo-metoden för gamla Python-versioner är det nya strängformatet som introducerades i Python 3 mer läsbart och människovänligt.
Att använda och manipulera strängar i Python kan verka svårt, men det är bedrägligt enkelt.
Läs Nästa
- Programmering
- Programmering
- Pytonorm
- Programmeringsspråk
Idowu brinner för allt smart teknik och produktivitet. På fritiden leker han med kodning och byter till schackbrädet när han har tråkigt, men han älskar också att bryta sig från rutinen då och då. Hans passion för att visa människor vägen kring modern teknik motiverar honom att skriva mer.
Prenumerera på vårt nyhetsbrev
Gå med i vårt nyhetsbrev för tekniska tips, recensioner, gratis e -böcker och exklusiva erbjudanden!
Klicka här för att prenumerera