Merkkijonot
- Merkkijonot
- Merkkijonojen yhdistäminen
- Useampi muuttuja Print-funktiossa
- Merkkijono on jono merkkejä
- Merkkijonon muotoilu format-funktiolla
- Merkkijonon koostaminen ja muotoilu f-merkkijono
- Merkkijonojen käsittely
Merkkijonojen yhdistäminen
Voit yhdistää merkkijonoja +
operaattorilla.
fname = "Annika"
lname = "Virta"
fullname = fname + lname
print(fullname)

Sinuun täytyy lisätä tarvittaessa välilyönti merkkijonojen väliin. Seuraavassa esimerkissä se on tehty käyttäen +-operaattoria.
fname = "Annika"
lname = "Virta"
fullname = fname + ' ' + lname
print(fullname)

Useampi muuttuja Print-funktiossa
Print-funktio voi esittää usemman muuttujan arvon. Erota tekstit tai muuttujat toisistaan pilkulla.
fname = "Jack"
lname = "Russell"
print(fname, lname)

Huomaa että Python jättää automaattisesti välilyönnin tekstien/muuttujien väliin kun käytät pilkkua.
fname = "Jack"
lname = "Russell"
print("Hyvää päivää", fname, lname)

Voit print-funktiossa käyttää myös luku-muuttujia.
fname = "Reiska"
age = 42
print("Terve", fname, "olet", age, "vuotta")

Merkkijono on jono merkkejä
Merkkijono on nimensä mukaisesti jono merkkejä.
Merkkijonon yksittäisen merkin voi hakea indeksin avulla. Indeksit alkavat nollasta.
mjono = "Jack Russell"
eka = mjono[0]
vika = mjono[11]
print(f"Merkkijonon {mjono} ensimmäinen merkki on {eka} ja viimeinen {vika}.")

Merkkijonon pituus saadaan len
-funktiolla.
mjono = "Jack Russell"
pituus = len(mjono)
print(f"Merkkijonossa {mjono} on {pituus}, huomaa että tyhjäkin on merkki ;-)")

Seuraavassa esimerkissä näytetään etunimen ensimmäinen kirjain nimen merkkien verran, eli tässä tapauksessa viisi kertaa.
nimi = "Diana"
eka = nimi[0]
pituus = len(mjono)
print(eka * pituus)

Merkkijonon muotoilu format-funktiolla
Joskus tulosten esittämisessä on tärkeää, että tulos esitetään tietyllä tarkkuudella. Muista fysiikan ja matematiikan laskujen yleisperiaate: "Tarkkuus ei laskemalla lisäänny, vaan epätarkin arvo määrittää esitystarkkuuden." Voit print-funktion yhteydessä muotoilla ja esittää desimaalilukuja halutulla tarkkuudella käyttämällä format
-funktiota.
Seuraavassa esimerkissä on liukuluku esitetty ensin yhden desimaalin ja sitten kahden desimaalin tarkkuudeella
litres = 12.345000001
#yhden desimaalin tarkkuus
print("Kulutus: {:.1f} litraa".format(litres))
#kahden desimaalin tarkkuus
print("Kulutus: {:.2f} litraa".format(litres))

Merkkijonon koostaminen ja muotoilu f-merkkijono
Python-versiossa 3.6 esiteltiin uusi tapa muotoilla merkkijonoja, kutsumme sitä yksinkertaisesti f-merkkijonoksi
(engl. f-string). f-merkkijono
on kätevä tapa muodostaa merkkijonoja ja muotoilla niitä. Sen avulla on helppo leipoa muuttujien arvoja merkkijonoihin. Muuttuja kirjoitetaan aaltosulkujen {}
sisään, ja Python huolehtii että se rakentaa merkkijonon oikein. Kiva :-) Koska f-merkkijono
tuli Pythonin versioon 3.6, voi vanhemmasta materiaalista löytyy eri tapoja muotoilla merkkijonoja, suosittelemme kuitenkin sen f-merkkijonp
käyttöä.
Koostaminen f-merkkijono
Seuraavassa esimerkissä muuttujan arvo lasketaan kahden luvun tulona ja tulos esitetään käyttäjälle. Huomaa f
käyttö merkkijonon edessä ja {} käyttö muuttujan nimen ympriööä!
a = 6
b = 7
x = a * b
print(f"Is {x} meaning of life?")

Voit yhdistää useita eri muuttujia merkkijonoon f-stringin
avulla.
a = 6
b = 7
x = a * b
print(f"Lukujen {a} ja {b} tulo on {x}.")

Muotoilu f-merkkijono
f-merkkijonojen {muuttuja}-kenttää voi muotoilla lukuisilla eri tavoilla. Sen tyypillisin käyttötapa on {muuttuja:
Kentän tyyppiä merkitään kirjaimilla. Tärkeimpiä kentän tyyppejä ovat:
- liukuluku f
- kokonaisluku d
- merkkijono s
Voit esittää liukulukuja halutulla määrällä desimaaleja f-merkkijonon
avulla. Huomaa että muuttujan nimen jälkeen on kaksoispiste : sitten piste . ja desimaalien määrä 2f.
price = 12.45
weigth = 0.89
summa = price * weigth
print(f"Exact sum is {summa}")
print(f"Sum with two decimals {summa:.2f}")

Merkkijonojen käsittely
Python sisältää lukuisia valmiita metodeja (eli funktioita) merkkijonojen käsittelyyn. Voit esimerkiksi muuttaa merkkijonon kaikki kirjaimet isoiksi kirjaimiksi, pieniksi kirjaimiksi, voit muuttaa halutut merkit merkkijonosta jne.
Täältä löytyy kattava lista merkkijonojen metodeja