Industriële fabricage
Industrieel internet der dingen | Industriële materialen | Onderhoud en reparatie van apparatuur | Industriële programmering |
home  MfgRobots >> Industriële fabricage >  >> Industrial programming >> Python

Python `format()` strings beheersen met duidelijke voorbeelden

Wat is Python String format()?

Python String format() is een functie die gebruikt wordt om placeholders in een string te vervangen, substitueren of converteren met geldige waarden in de finale string. Het is een ingebouwde functie van de Python-stringklasse, die de geformatteerde string als output retourneert. De placeholders binnen de string worden gedefinieerd in accolades.

Bijvoorbeeld, “Welcome to Guru99 {}”.format(‘waarde hier’).

In deze tutorial leer je:

  • Wat is Python String format()?
  • Syntax van format() functie in Python
  • Hoe string format() werkt?
  • Voorbeeld: Lege placeholder vervangen met een stringwaarde
  • Voorbeeld: Lege placeholder vervangen met een numerieke waarde
  • Voorbeeld: Variabele of keyword-argumenten in de placeholder
  • Voorbeeld: Index of positionele argumenten in de placeholder
  • Formattering binnen placeholders
  • Klasse gebruiken met format()
  • Dictionary gebruiken met format()
  • Variabele substituties paddingen

Syntax van format() functie in Python

templatestring.format(val1, val2...)

Parameters

val1, val2 … : De waarden die moeten vervangen worden in de gegeven template-string die placeholders heeft in de vorm van accolades {}. De placeholders kunnen een string, key/value-paar, integers, floating-point-getallen, karakters, etc. zijn.

Retourwaarde:

Het zal de finale string teruggeven, met geldige waarden vervangen op de plaats van de placeholders in accolades.

Placeholders

De placeholders in de template-string worden vertegenwoordigd met accolades, bijv. {}. De placeholder kan leeg zijn {}, of een variabele hebben bijv. {name}, of een nummer-index bijv. {0}, {1} etc.

Hoe string format() werkt?

De Python String format()-methode scant de originele strings op placeholders. De placeholders kunnen lege accolades ({}), positionele argumenten zijn, d.w.z. de string kan placeholders hebben met index 0, 1 bijv. {0}, {1} etc.

Voor keyword-argumenten zal de variabelenaam binnen de accolades aanwezig zijn bijv. {name}, {age}. In het geval van lege accolades, zullen de waarden uit de format worden vervangen binnen de accolades in volgorde.

De eerste waarde wordt vervangen met de eerste lege accolade, gevolgd door de volgende. Voor positionele argumenten begint de index bij 0 en zo verder. De waarden zijn beschikbaar in format gescheiden door komma's, en de 0de waarde wijst naar de eerste waarde binnen format enz.

Voor keyword-argumenten, d.w.z. wanneer je een variabele in je placeholders gebruikt, kun je de volgorde van waarden binnen format zo hebben zoals je nodig hebt.

De volgorde maakt hier niet uit omdat de waarden vervangen worden op basis van de variabelenaam in de format(). Hier zijn een paar voorbeelden van hoe placeholders in een string te gebruiken als leeg, positioneel en met keywords of variabelen.

Voorbeeld: Lege placeholder vervangen met een stringwaarde

In het onderstaande voorbeeld heeft de string lege accolades({}). De waarde gegeven aan de format wordt vervangen binnen de accolades({}).

De waarde die we willen vervangen is een string.

Voorbeeld:

Met String Formatting in Python willen we de accolades ({}) vervangen met een stringwaarde. De waarde wordt gegeven aan format(“Guru99”). Bij uitvoering worden de accolades {} vervangen met Guru99, en je krijgt de finale string als Welcome to Guru99 tutorials.

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

Uitvoer:

Welcome to Guru99 tutorials

Voorbeeld: Lege placeholder vervangen met een numerieke waarde

In het onderstaande voorbeeld willen we de numerieke waarde vervangen binnen de originele string. De accolades({}) worden toegevoegd aan de plek waar je de numerieke waarde nodig hebt. Bij uitvoering worden de lege accolades ({}) vervangen met de numerieke waarde.

Voorbeeld:

Je kunt ook format() gebruiken om getallen in je string in te voegen. Het voorbeeld laat zien hoe de lege placeholder {} vervangen wordt met getal 99 binnen format().

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

Uitvoer:

Welcome to Guru99 Tutorials

Voorbeeld: Variabele of keyword-argumenten in de placeholder gebruiken

Het is ook mogelijk om variabelen in de accolades te gebruiken, zoals in het onderstaande voorbeeld getoond. De variabelen zijn gedefinieerd binnen format(). Daarom, bij uitvoering, wordt de waarde toegewezen aan de variabele vervangen binnen de originele string.

Voorbeeld:

Je kunt variabelen in accolades gebruiken bijv. {name} {num}. De waarden voor name en num variabele zijn beschikbaar binnen format d.w.z. format(name=”Guru”, num=”99″). De waarden gegeven aan name en num worden vervangen binnen {name} en {num}.

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

Uitvoer:

Welcome to Guru99 Tutorials

Voorbeeld: Index of positionele argumenten in de placeholder gebruiken

De waarden kunnen vervangen worden met indexes zoals 0, 1, 2 binnen de placeholders. De waarde wordt in volgorde geselecteerd uit de format(), zoals in het onderstaande voorbeeld getoond.

Voorbeeld:

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

Uitvoer:

Welcome to Guru99 Tutorials

Voorbeeld: Meerdere placeholders in een string gebruiken

In dit voorbeeld gaan we meerdere lege placeholders gebruiken.

Voorbeeld:

De string in het voorbeeld heeft meerdere lege placeholders en elke placeholder verwijst naar een waarde binnen format(). De eerste waarde wordt vervangen voor de eerste placeholder enz.

print ("{} is {} nieuw soort {} ervaring!".format("Guru99", "totally","learning"))

Uitvoer:

Guru99 is totally new kind of learning experience!

Formattering binnen placeholders

Je hebt gezien dat het mogelijk is om placeholders leeg te laten, met een variabele of een index. Het is ook mogelijk dat je Python String Formatting binnen de placeholder kunt toepassen.

Hier is de lijst met formaten

Formaat Beschrijving Voorbeeld
:d Geeft output in decimaal formaat wanneer gebruikt binnen de placeholder print("The binary to decimal value is : {:d}".format(0b0011))

Uitvoer:

The binary to decimal value is : 3
:b Geeft output in binair formaat wanneer gebruikt binnen de placeholder print("The binary value is : {:b}".format(500))

Uitvoer:

The binary value is : 111110100
:e Geeft output in wetenschappelijk formaat wanneer gebruikt binnen de placeholder, de exponent e in de output is lowercase. print("The scientific value is : {:e}".format(40))

Uitvoer:

The scientific format value is : 4.000000e+01
:E Geeft output in wetenschappelijk formaat wanneer gebruikt binnen de placeholder, de exponent E in de output is uppercase print("The scientific value is : {:E}".format(40))

Uitvoer:

The scientific value is : 4.000000E+01
:f Dit geeft een fixed-point number formaat. Standaard krijg je output van elk getal met zes decimalen. Als je tot 2 decimalen nodig hebt, gebruik als .2f d.w.z. een punt (.) voor 2f print("The value is : {:f}".format(40))

Uitvoer:

The value is : 40.000000

Voorbeeld: Output tonen tot 2 decimalen.

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

Uitvoer:

The value is: 40.00
:o Dit geeft octaal formaat print("The value is : {:o}".format(500))

Uitvoer:

The value is : 764
:x Dit geeft hex formaat in lowercase print("The value is : {:x}".format(500))

Uitvoer:

The value is : 1f4
:X Dit geeft hex formaat in uppercase. print("The value is : {:X}".format(500))

Uitvoer:

The value is : 1F4
:n Dit geeft number formaat. print("The value is : {:n}".format(500.00))

Uitvoer:

The value is : 500
:% Dit geeft output in percentage-formaat.
Standaard geeft het 6 decimalen voor percentage-output, als je geen decimale waarde wilt kun je punt met 0 gebruiken d.w.z. ({:.0%}).
print("The value is : {:%}".format(0.80))

Uitvoer:

The value is : 80.000000%

Dit voorbeeld laat zien hoe de decimale plekken over te slaan met {:.0%} binnen de placeholder.

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

The value is: 80%
:_ Dit geeft een underscore als duizendtallen-scheider. Beschikbaar vanaf Python 3.6+. print("The value is {:_}".format(1000000))

Uitvoer:

The value is : 1_000_000
:, Dit geeft komma als duizendtallen-scheider print("The value is : {:,}".format(1000000))

Uitvoer:

The value is : 1,000,000

De komma(,) wordt toegevoegd als duizendtallen-scheider zoals getoond in de output.

: Dit voegt een spatie toe voor positieve getallen Dit voorbeeld laat zien hoe spatie of padding toe te voegen voor het gegeven getal. Het getal 5 geeft het aantal spaties aan dat je voor het getal wilt.

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

Uitvoer:

The value is: 40
:- Dit voegt een minusteken toe voor negatieve getallen Het voorbeeld laat zien hoe output te krijgen met een min (-) teken voor het getal met {:-}.

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

Uitvoer:

The value is: -40
:+ Je kunt plus-teken gebruiken om aan te duiden dat het getal positief is Het voorbeeld laat zien hoe output te krijgen met een plus (+) teken voor het getal met {:+}.

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

Uitvoer:

The value is: +40
:= Het gelijk-teken wordt gebruikt om het +/- teken aan de linkerkant te plaatsen. Het voorbeeld laat zien hoe output te krijgen met een plus (+/-) teken voor gelijk-teken met {:=}.

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

Uitvoer:

The value is -40
:^ Dit centreert het eindresultaat Het voorbeeld laat zien om {:^} te gebruiken om de tekst te centreren. Het getal 10 wordt gebruikt om 10 spaties toe te voegen om de centrering te tonen wanneer de waarde vervangen wordt.

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

Uitvoer:

The value 40 is a positive value

Hier kun je 10 gebruiken wat 10 spaties toevoegt in de finale tekst, en de te vervangen waarde wordt gecentreerd tussen de 10 spaties. De 10 spaties worden toegevoegd om de centrering van de vervangen waarde te tonen.

:> Dit right-aligned het eindresultaat De spatie van 10 wordt toegevoegd met (:>10), en de vervangen waarde is right-aligned.

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

Uitvoer:

The value 40 is positive value
:< Dit left-aligned het eindresultaat De spatie van 10 wordt toegevoegd met (:<10), en de vervangende waarde is left-aligned.

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

Uitvoer:

The value 40 is positive value

Klasse gebruiken met format()

In dit voorbeeld maken we een klasse en gebruiken het object van de klasse binnen de .format Python-methode. De placeholders verwijzen naar klasse-eigenschappen of members via het klasse-object.

Voorbeeld:

De klasse wordt aangeroepen binnen de format(c=MijnKlasse()). Het object c heeft de referentie naar de eigenschappen en methodes binnen klasse MijnKlasse().

class MijnKlasse: msg1="Guru" msg2="Tutorials" print("Welcome to {c.msg1}99 {c.msg2}!".format(c=MijnKlasse()))

Uitvoer:

Welcome to Guru99 Tutorials!

Dictionary gebruiken met format()

Het is ook mogelijk om een dictionary in format() te gebruiken zoals in het onderstaande voorbeeld getoond:

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

Uitvoer:

Welcome to Guru99 Tutorials!

Variabele substituties paddingen

Met de string.format()-methode kun je padding, spaties toevoegen met placeholders in je string.

Voorbeeld:

In onderstaand voorbeeld voegen we spatie toe binnen de placeholder met format(). Om spatie toe te voegen, moet je het aantal spaties specificeren binnen de accolades na de dubbele punt(:). Dus de placeholder ziet eruit als {:5}.

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

Uitvoer:

I have 2 dogs and 1 cat

Je kunt ook de index in de placeholder geven bijv. {0:5} waar 0 verwijst naar de eerste waarde binnen format.

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

Uitvoer:

I have 2 dogs and 1 cat

Samenvatting

  • Python string-klasse geeft ons een belangrijke ingebouwde commando genaamd format() dat ons helpt om de string met placeholders te vervangen, substitueren of converteren met geldige waarden in de finale string.
  • De placeholders in de string-module Python zijn gedefinieerd in accolades, bijv. “Welcome to Guru99 {}”.format(‘waarde hier’).
  • De placeholder kan leeg zijn {}, of een variabele hebben bijv. {name}, of een nummer-index bijv. {0}, {1} etc.
  • Je kunt String Formatting in Python binnen placeholders gebruiken wat helpt om padding toe te voegen, te centreren en ook helpt met number formatting.

Python

  1. Python's strip()-methode beheersen: Uitgebreide handleiding & praktische voorbeelden
  2. Python's str.count() beheersen: Karakters & substrings tellen met voorbeelden
  3. Python's String.find()-methode beheersen: Syntaxis, voorbeelden & alternatieven
  4. Python lambda-functies beheersen: praktische voorbeelden & best practices
  5. Python round()-functie uitgelegd met praktische voorbeelden
  6. Python's map()-functie beheersen: syntaxis, voorbeelden en best practices
  7. Python timeit() – Uitvoeringstijd meten met praktische voorbeelden
  8. Python Counter in collections – Efficiënt tellen, updaten en rekenkundige operaties
  9. type() en isinstance() in Python begrijpen: praktische voorbeelden
  10. Java String.indexOf() beheersen: Substrings lokaliseren & praktische voorbeelden
  11. Java's String compareTo() Methode beheersen: Syntaxis, Use Cases en Praktische Voorbeelden