Tulostus ja tiedon kysyminen
print tulostaa arvoja, input lukee tekstiä. Näiden erottaminen auttaa ymmärtämään ohjelman ja käyttäjän vuorovaikutusta.
Tekstin ja arvojen tulostus
print erottaa pilkuilla annetut arvot oletuksena välilyönnillä ja päättää tulostuksen rivinvaihtoon. + yhdistää merkkijonoja, joten numero pitää tarvittaessa muuntaa str-funktiolla. F-merkkijono sijoittaa aaltosulkeissa olevat arvot tekstiin.
nimi = "Aino"
ika = 16
print("Nimi:", nimi, "Ikä:", ika)
print("Ikä: " + str(ika))
print(f"Hei, {nimi}!")Tulostus (ilman syötteiden kysymystekstejä):
Nimi: Aino Ikä: 16 Ikä: 16 Hei, Aino!
Syötteen lukeminen
input palauttaa aina merkkijonon. Tavallisessa päätteessä sen argumentti on kysymysteksti. KoodiGurun Aja koodi näyttää myös syötteet; kurssin tarkistukset eivät vertaa kysymystekstejä. Anna jokaiselle input-kutsulle oma syöte järjestyksessä.
nimi = input("Anna nimi: ")
ika = int(input("Anna ikä: "))
print(f"{nimi} on ensi vuonna {ika + 1} vuotta.")Anna syötteiksi järjestyksessä:
Aino 16
Tulostus (ilman syötteiden kysymystekstejä):
Aino on ensi vuonna 17 vuotta.
Tulosteen muotoilu
:.2f näyttää kaksi desimaalia. Se muotoilee tekstin eikä muuta alkuperäistä lukua. Python-koodissa ja float-syötteessä desimaalierotin on piste. Myös format-metodi toimii.
hinta = 3.5
print(f"Hinta: {hinta:.2f}")
print("Hei, {}!".format("Aino"))
print("a", "b", sep="-")Tulostus (ilman syötteiden kysymystekstejä):
Hinta: 3.50 Hei, Aino! a-b
Lainausmerkit ja rivinvaihto
Yksittäinen ja kaksinkertainen lainausmerkki toimivat samalla tavalla tekstin rajoina. Valitse eri ulompi merkki, jos tekstissä on lainaus. Pakomerkki \n tarkoittaa rivinvaihtoa.
print('Hän sanoi: "Hei!"')
print("Ensimmäinen\nToinen")Tulostus (ilman syötteiden kysymystekstejä):
Hän sanoi: "Hei!" Ensimmäinen Toinen
Kokeile itse
Miksi inputista saatu "5" ja "2" yhdistyvät tekstiksi "52"?
Vastaus ja perustelu
Molemmat ovat merkkijonoja. int-arvoiksi muunnettuna niiden summa on 7. Virheellinen numeroteksti aiheuttaa ValueError-poikkeuksen.
Suorita koodiesimerkit yksi kerrallaan. Jokainen esimerkki sisältää tarvitsemansa määrittelyt. Vertaa omaa ennustettasi tulosteeseen ennen seuraavaan aiheeseen siirtymistä.