Osa 1

Tietoa käyttäjältä

Syöte tarkoittaa tietoa, jonka ohjelman käyttäjä antaa ohjelmalle. Pythonissa voimme lukea rivin käyttäjän antamaa syötettä input-komennolla. Komento näyttää samalla viestin käyttäjälle, jossa voi pyytää syötettä.

Esimerkiksi seuraava ohjelma lukee käyttäjän nimen input-komennolla ja tulostaa ruudulle tervehdyksen print-komennolla:

nimi = input("Anna nimesi: ")
print("Moi vaan, " + nimi)

Ohjelman suoritus voisi näyttää esimerkiksi seuraavalta (käyttäjän kirjoittama syöte on merkitty punaisella):

Esimerkkitulostus

Anna nimesi: Pekka Python Moi vaan, Pekka Python

Ohjelman tulostama teksti riippuu siis osittain käyttäjän syötteestä. Niinpä ohjelman suoritus voisi näyttää myös tältä:

Esimerkkitulostus

Anna nimesi: Outi Ohjelmoija Moi vaan, Outi Ohjelmoija

Ohjelmassa esiintyvä sana nimi on muuttuja. Muuttujalla tarkoitetaan ohjelmoinnissa paikkaa, johon voidaan tallentaa jokin arvo kuten merkkijono tai lukuarvo. Tämä arvo voidaan myöhemmin lukea tai sitä voidaan muuttaa.

Muuttujaan viittaaminen

Muuttujaan voidaan viitata ohjelmassa useasti:

nimi = input("Anna nimesi: ")

print("Moi, " + nimi + "!")
print(nimi + " on aika kiva nimi.")

Esimerkkitulostus, kun käyttäjä antaa nimen Pauli Python:

Esimerkkitulostus

Anna nimesi: Pauli Python Moi, Pauli Python! Pauli Python on aika kiva nimi.

Tarkastellaanpa tulostuskomentoja vähän tarkemmin: print-komennolle annetaan merkkijono, johon on yhdistetty valmista tekstiä ja käyttäjän syöte. Nämä on yhdistetty toisiinsa +-operaattorilla, joka yhdistää kaksi merkkijonoa yhdeksi uudeksi merkkijonoksi.

Merkkijonoja voidaan yhdistää muuttujien arvoihin vapaasti:

nimi = input("Anna nimesi: ")

print("Moi " + nimi + "! Varmistan vielä: nimesi on siis " + nimi + "?")

Esimerkkitulostus, kun käyttäjä antaa nimen Erkki Esimerkki:

Esimerkkitulostus

Anna nimesi: Erkki Esimerkki Moi Erkki Esimerkki! Varmistan vielä: nimesi on siis Erkki Esimerkki?

Useampi kuin yksi syöte

Ohjelmassa voi lukea useamman eri syötteen. Huomaa, että jokainen input-komennon kysymä merkkijono tallennetaan eri muuttujaan:

nimi = input("Anna nimesi: ")
sposti = input("Anna sähköpostiosoitteesi: ")
lempinimi = input("Anna lempinimesi: ")

print("Varmistetaan vielä, että tiedot menivät oikein")
print("Nimesi: " + nimi)
print("Sähköpostiosoitteesi: " + sposti)
print("Lempinimesi: " + lempinimi)

Esimerkki ohjelman suorituksesta:

Esimerkkitulostus

Anna nimesi: Keijo Keksitty Anna sähköpostiosoitteesi: keijo99@example.com Anna lempinimesi: Keke Varmistetaan vielä, että tiedot menivät oikein Nimesi: Keijo Keksitty Sähköpostiosoitteesi: keijo99@example.com Lempinimesi: Keke

Jos samaan muuttujaan luetaan syöte useamman kerran, uusi arvo ylikirjoittaa aina edellisen. Esimerkiksi:

osoite = input("Mikä on osoitteesi? ")
print("Asut siis osoitteessa " + osoite)

osoite = input("Anna uusi osoite: ")
print("Osoite on nyt " + osoite)

Esimerkkisuoritus:

Esimerkkitulostus

Mikä on osoitteesi? Pythonpolku 1 A 10 Asut siis osoitteessa Pythonpolku 1 A 10 Anna uusi osoite: Uusikatu 999 Osoite on nyt Uusikatu 999

Jos samaan muuttujaan luetaan kaksi syötettä peräkkäin, ei ensimmäisenä syötettyyn arvoon siis pääse enää käsiksi:

osoite = input("Mikä on osoitteesi? ")
osoite = input("Anna uusi osoite: ")

print("Osoite on nyt " + osoite)

Esimerkkisuoritus:

Esimerkkitulostus

Mikä on osoitteesi? Pythonpolku 10 Anna uusi osoite: Ohjelmoijanraitti 230 Osoite on nyt Ohjelmoijanraitti 230

Kertauskysely tämän osan asioihin liittyen:

:
Loading...
:
Loading...

Kirjaudu sisään nähdäksesi tehtävän.

Seuraava osa: