Uanset om det er en databaseforespørgsel eller resultater af matematiske operationer, tilbyder Python -strengformatmetoden en mere dynamisk og tiltalende måde at præsentere resultater for en bruger.
Lad os tage et kig på, hvordan str.format () funktion fungerer i Python. Du finder også ud af, hvordan du kan bruge dette format i dine egne programmer.
Hvordan fungerer Python String -format ()?
Python str.format () funktion lader dig indsætte dine resultater hvor som helst i en streng.
Det fungerer ved at allokere plads til dine resultater inden for strengen ved hjælp af krøllede seler. Det skriver derefter dit output til den position ved hjælp af format() metode.
Strengene uden for bøjlen er det, du kalder bogstavelige tekster.
Sådan bruges Python String -format () Metode
Det str.format () funktion accepterer en værdi og en valgfri strengformatspecifikator.
Sådan ser den generelle syntaks ud:
str.format (værdi, format_spec)
Lad os nu se på mere praktiske eksempler på, hvordan du bruger denne Python -strengmetode.
1. Indsæt en værdi i en bestemt position
Her er et grundlæggende eksempel på, hvordan du indsætter en værdi i en streng ved hjælp af str.format () metode:
Omkostninger = 45
formattedMethod = "Denne vare koster kun {} dollars"
print (formattedMethod.format (pris))
Output: Denne vare koster kun 45 dollars
Ovenstående kode er den samme som:
formattedMethod = "Denne vare koster kun {} dollars"
print (formattedMethod.format (45))
Output: Denne vare koster kun 45 dollars
2. Indsæt flere udgange i en streng
Du kan også indsætte flere resultater i en streng. Sådan gør du:
y = 7*8
f = 5+5
g = 0
a = "Værdien af y er {}, mens f er {}. Ingen kan se {} ". -Formatet (y, f, g)
tryk (a)
Output: Værdien af y er 56, mens f er 10. Ingen kan se 0
3. Brug Escape Braces til at placere output i dedikerede seler
Hvis du skal placere nogle af resultaterne i en krøllet beslag, er det let. Du behøver kun at introducere to ekstra flydende seler.
Sig f.eks., At du vil y i en dedikeret krøllet bøjle:
a = "Værdien af y er {{{}}}, mens f er {}. Ingen kan se {} ". -Formatet (y, f, g)
tryk (a)
Output: Værdien af y er {56}, mens f er 10. Ingen kan se 0
4. Outputværdier fra en liste
Du kan vælge bestemte værdier fra en liste og indsætte dem i en streng:
myList = [10, 2, 4, 6]
print (("Den første er {} og den tredje er {}"). format (myList [0], myList [2]))
Output: Den første er 10 og den tredje er 4
For at undgå gentagelse inden for .format() i parentes, kan du indstille formatspecifikatoren til i stedet at pege på en enkelt variabel.
Sådan gør du det:
myList = [10, 2, 4, 6]
print (("Den første er {dinListe [0]} og den tredje er {dinListe [2]}"). format (dinListe = minListe))
Output: Den første er 10 og den tredje er 4
Ovenstående forekomst gælder også for andre eksempler, vi har behandlet tidligere. Så du kan lege med dem ved hjælp af dette trick.
5. Indsæt værdier fra en ordbog
På samme måde som du gjorde i det foregående afsnit, kan du bruge str.format () metode til at indsætte en ordbogsværdi i en streng:
myDiction = {"Ten": 10, "Two": 2, "Four": 4, "Six": 6}
print (("Den første er {} og den tredje er {}"). format (myDiction ["Ten"], myDiction ["Four"]))
Output: Den første er 10 og den tredje er 4
Relaterede: Sådan konverteres en liste til en ordbog i Python
Og hvis du vil bruge tricket fra det forrige afsnit:
myDiction = {"Ten": 10, "Two": 2, "Four": 4, "Six": 6}
print (("Den første er {Ten} og den tredje er {Four}"). format (** myDiction))
Output: Den første er 10 og den tredje er 4
Du kan også skrive ovenstående kode som:
print (("Den første er {d [Ten]} og den tredje er {d [Four]}"). format (d = myDiction))
Output: Den første er 10 og den tredje er 4
6. Indsæt output fra en funktion i en streng
Hvis du vil vise output fra en funktion i en streng:
def difNums (a, b):
hvis a> b:
returner a - b
andet:
return return "Du kan ikke trække {} fra {} ved hjælp af denne funktion" .format (a, b)
print (("Hej: {}"). format (difNums (2, 6)))
Output: Hey there: Du kan ikke trække 2 fra 6 ved hjælp af denne funktion
Brug af Python String Format Specifiers
Formatspecificatoren lader dig vælge, hvordan dit format kommer igennem. Som tidligere nævnt er det en valgfri parameter, der følger med str.format ().
Ved hjælp af denne mulighed kan du justere dit output, afskære lange strenge, gruppere output eller afrunde et helt tal til et bestemt antal betydningsfulde tal og endnu mere.
Du skriver ofte formatspecifikationerne inde i de krøllede seler. Men du kan også angive dem eksplicit inde i .format() parentes.
Lad os gå videre og se nogle af dets brugssager.
7. Juster strengoutput
Du kan bruge den større (>) tegn for at justere en strengoutput til højre:
print ("Hej {:> 15}". format (12734589))
Output: Hej 12734589
Du kan også justere din tekst til midten, hvis du vil:
print ("Hej {:^15}". format (12734589))
Output: Hej 12734589
Lad os formatere ovenstående output yderligere. For eksempel kan du inkludere understregninger for at se polstring på hver side af dit strengoutput:
print ("Hej {: _^15}". format (12734589))
Output: Hej ___12734589____
Men som tidligere nævnt kan du angive formatspecificatoren eksplicit som en parameter inden for str.format ().
Så den tidligere kode ser sådan ud i så fald:
print ("Hej {: {g}}". format (12734589, g = "_^15"))
Output: Hej ___12734589____
Omskriv de andre eksempler ved hjælp af ovenstående mulighed.
8. Format output til et specifikt antal signifikante tal
Du vil måske også returnere et bestemt antal betydende tal til en beregning ved hjælp af .format() metode.
Eksempelkoden nedenfor afrunder for eksempel resultatet af den matematiske operation til et betydeligt decimaltal:
calcprofitPerc = ((45 - 20)/45)*100
formattedOutput = "Vores fortjeneste på dette er {profit: .1f}%"
print (formattedOutput.format (profit = calcprofitPerc))
Output: Vores fortjeneste på dette er 55,6%
9. Afkort lange strenge
Selvom afkortning af en tekst kan virke upraktisk, kan du ikke vide, hvor du måske har brug for den.
Sådan afbrydes en del af din strengoutput ved hjælp af str.format () fungere:
print (("Afkort dette til de første 3 alfabeter: {: .3}"). format ("idowuomisola"))
Output: Afkort dette til de første 3 alfabeter: ido
10. Separat gruppe af tal ved hjælp af et kriterium
Du kan adskille en gruppe tal ved hjælp af en understregning eller et komma:
print ("Adskilt med understregning: {: {g}}". format (12734589, g = "_"))
print ("Adskilt med komma: {: {g}}". format (12734589, g = ","))
Produktion:
Adskilt af understregning: 12_734_589
Adskilt med komma: 12.734.589
Relaterede:Sådan deles en streng i Python
Desuden kan du angive gruppen af numre, du vil behandle ved hjælp af dens nøgle:
print ("Første tal ved understregning: {0: {g}}". format (12734589, 123674, 662772, g = "_"))
print ("Tredje tal med komma: {2: {g}}". format (12734589, 123674, 662772, g = ","))
Produktion:
Første tal ved understregning: 12_734_589
Tredje tal med komma: 662.772
Presenter output godt med Python String -format () metode
En af de måder, du kan få dit program til at skille sig ud, er, hvordan du præsenterer resultater og forespørgsler. Uden tvivl tilbyder Python -strengformatmetoden en renere måde at levere resultater på. I modsætning til den tidligere modulo-metode for gamle Python-versioner er det nye strengformat, der blev introduceret i Python 3, mere læsbart og menneskevenligt.
Brug og manipulation af strenge i Python kan virke svært, men det er vildledende ligetil.
Læs Næste
- Programmering
- Programmering
- Python
- Programmeringssprog
Idowu brænder for alt smart teknologi og produktivitet. I fritiden leger han med kodning og skifter til skakbrættet, når han keder sig, men han elsker også at bryde væk fra rutinen en gang imellem. Hans passion for at vise folk vejen rundt om moderne teknologi motiverer ham til at skrive mere.
Abonner på vores nyhedsbrev
Tilmeld dig vores nyhedsbrev for tekniske tips, anmeldelser, gratis e -bøger og eksklusive tilbud!
Klik her for at abonnere