Python:
Merkkijonon interpolointi
Miten:
Python 3.6:ssa ja sitä uudemmissa versioissa voit interpoloida merkkijonoja käyttämällä f-merkkijonoja. Näin se tehdään:
name = 'Alice'
age = 30
greeting = f"Hei, {name}. Olet {age} vuotta vanha."
print(greeting)
Tuloste:
Hei, Alice. Olet 30 vuotta vanha.
Voit myös käyttää lausekkeita aaltosulkujen sisällä:
a = 5
b = 10
info = f"Viisi plus kymmenen on {a + b}, ei {2 * (a + b)}."
print(info)
Tuloste:
Viisi plus kymmenen on 15, ei 30.
Syväluotaus
Ennen Python 3.6:a .format()
oli tapa tehdä merkkijonon interpolaatiota:
name = 'Bob'
age = 25
greeting = "Hei, {}. Olet {} vuotta vanha.".format(name, age)
print(greeting)
Vanhan koulukunnan Pythonissa (versiot < 2.6) käytettiin %
-operaattoria interpolaatioon, mikä on vähemmän intuitiivista ja voi muuttua sekavaksi useiden muuttujien kanssa:
name = 'Carol'
age = 35
greeting = "Hei, %s. Olet %d vuotta vanha." % (name, age)
print(greeting)
Siistimmän syntaksin lisäksi f-merkkijonot ovat nopeampia, koska ne arvioidaan suoritusaikana ja muunnetaan sitten suoraan tehokkaaseen merkkijonoformaattitoimintoon. .format()
-metodi ja %
-operaattori sisältävät useampia vaiheita ja ovat hitaampia.
Katso Myös
- PEP 498 – Kirjaimellinen merkkijonon interpolaatio virallisessa dokumentaatiossa f-merkkijonoista.
- Python f-merkkijonot Real Pythonin opastuksessa f-merkkijonojen käyttöön.
- .format()-Metodi Pythonin dokumentaatiossa ymmärtämään vanhempaa
.format()
-menetelmää merkkijonojen muotoiluun.