Voit laittaa lukuja ja tekstiä talteen muuttujiin. Tässä muuttujan a arvoksi annetaan luku 1 ja muuttujan b arvoksi annetaan luku 2. Kun sitten lasketaan tämän jälkeen a + b, tulos on sama kuin laskettaisiin 1 + 2, kokeile:
a = 1 b = 2 print(a + b)
Voit antaa muuttujille mitä tahansa nimiä, mitä mieleen juolahtaa:
koira = 1 peruna = 2 print(koira + peruna)
Voit vaihtaa muuttujan arvoa. Tämä ohjelma laskee ensin 1 + 2 ja sitten 1 + 10:
a = 1 b = 2 print(a + b) b = 10 print(a + b)
Voit laittaa Pythonin toistamaan samaa asiaa monta kertaa, tähän tapaan (kokeile!):
for i in range(10):
print(i)
Tätä sanotaan silmukaksi. Tämä tekee täsmälleen saman asian kuin jos kirjoittaisit tällaisen ohjelman:
i = 0 print(i) i = 1 print(i) i = 2 print(i) i = 3 print(i) i = 4 print(i) i = 5 print(i) i = 6 print(i) i = 7 print(i) i = 8 print(i) i = 9 print(i)
Eli muuttuja nimeltä i saa ensin arvon 0, sitten 1, sitten 2 ja niin edelleen. Voit kokeilla erilaisia silmukoita, tämä laskee nollasta neljään:
for i in range(5):
print(i)
Tämä taas 0–99:
for i in range(100):
print(i)
Tietokoneilla on tapana laskea nollasta alkaen, mutta jos haluat esimerkiksi laskea yhdestä kymmeneen, voit lisätä tulostettaessa yhden:
for i in range(10):
print(i + 1)
Tässä oli muuttujan nimenä i, mutta voit antaa muuttujalle minkä tahansa nimen:
for juttu in range(10):
print(juttu)
Silmukan sisällä voit tehdä mitä tahansa, vaikkapa:
for i in range(10):
print("Hei!")
Mitähän tämä tekee?
for i in range(10):
print("Touko " * i)
Silmukan sisälle voi laittaa monta eri komentoa, tähän tapaan (huomaa joka rivin alussa olevat välilyönnit):
for i in range(5):
print("Hei")
print("Touko")
Tässä pelkästään Hei-tekstin tulostus on silmukan sisällä ja Touko tulostetaan vasta sen jälkeen (kokeile!):
for i in range(5):
print("Hei")
print("Touko")
Silmukoitakin voi laittaa peräkkäin:
for i in range(5):
print("Hei")
for j in range(5):
print("Touko")
Ja niitä voi laittaa vaikka sisäkkäin! Mitähän tässä tapahtuu?
for i in range(5):
print("Hei")
for j in range(3):
print("Touko")
Entä tässä? Kokeile eri lukuja viitosten paikalle!
for i in range(5):
for j in range(5):
print("x" * i + "o" * j)
Mitähän tämä tekee? Huomaa, että tässä sisempi silmukka pyörii ensin 0 kertaa, sitten 1 kerran, sitten 2 kertaa jne. ja lopuksi 9 kertaa:
for i in range(10):
for j in range(i):
print("x" * i)
print()
Entä jos muutetaankin hiukan?
for i in range(10):
for j in range(i):
print("x" * j)
print()