Osa 3 - tyyppimuunnokset
Kun kysyt käyttäjältä tietoa input-komennolla, on tieto oletuksena tekstinä. Jos tarvitsemasi tieto on numero, on sitä mahdoton käyttää numerona, ellei sen tyyppiä muuteta. Tämä voi vaikuttaa sekavalta, mutta testaappa seuraavaa koodia.
luku = input("Anna luku\n")
if luku >0:
print("Luku on nollaa suurempi.")
else:
print("Luku on nolla tai sitä pienempi.")
Koodi toimii siihen asti, kun käyttäjä on antanut luvun. Sen jälkeen ohjelma ei osaa enää käsitellä koodia, koska tekstiä ei voi verrata matemaattisilla komennoilla pienempi kuin ja suurempi kuin.
Tässä alla on esimerkki koodista, joka toimii. Siinä muuttuja "luku" muutetaan float-tyyppiseksi. Float on liukuluku eli desimaaliluku. Sitä on turvallista käyttää lukujen yhteydessä.
luku1 = input("Anna luku\n")
luku = float(luku1)
if luku >0:
print("Luku on nollaa suurempi.")
else:
print("Luku on nolla tai sitä pienempi.")
Tyyppimuunnoksen voi yhdistää kätevästi myös input-käskyyn, jolloin se ei unohdu
luku = input("Anna luku\n")
if luku >0:
print("Luku on nollaa suurempi.")
else:
print("Luku on nolla tai sitä pienempi.")
Koodi toimii siihen asti, kun käyttäjä on antanut luvun. Sen jälkeen ohjelma ei osaa enää käsitellä koodia, koska tekstiä ei voi verrata matemaattisilla komennoilla pienempi kuin ja suurempi kuin.
Tässä alla on esimerkki koodista, joka toimii. Siinä muuttuja "luku" muutetaan float-tyyppiseksi. Float on liukuluku eli desimaaliluku. Sitä on turvallista käyttää lukujen yhteydessä.
luku1 = input("Anna luku\n")
luku = float(luku1)
if luku >0:
print("Luku on nollaa suurempi.")
else:
print("Luku on nolla tai sitä pienempi.")
Tyyppimuunnoksen voi yhdistää kätevästi myös input-käskyyn, jolloin se ei unohdu
luku1=float(input("Anna luku\n"))