Alustamine Thonnyga
Pythoni koodi saab kirjutada väga erinevates keskkondades: Notepad, Thonny, PyCharm, Visual Studio Code. Sellel kursusel kasutame Thonnyt, mis on loodud just programmeerimise õppimiseks ja millel on mitmeid lisavõimalusi, mida mujal ei ole.
See peatükk on juhend, kuidas Thonny paigaldada ja seadistada nii, et edasine töö kursusel sujuks ilma tõrgeteta. Lisaks on siin näpunäited Thonny igapäevaseks kasutamiseks.
Thonny paigaldamine
Laadi aadressilt thonny.org alla oma süsteemile sobiv kõige uuem versioon (praegu 5.0.0), käivita installer ja järgi juhiseid. Thonnyga tuleb kaasa ka Python ise (versioon 3.14), seega Pythonit eraldi paigaldama ei pea.
Windowsi ja macOSi jaoks on eraldi versioonid vanematele (x64/Intel) ja uuematele (ARM64/Apple Silicon) arvutitele – vali see, mis sinu masinale vastab. Linuxi jaoks on olemas paigaldusskript.
Thonny avades peaks ette tulema selline pilt:

Thonny aken
Aknal on kaks olulist osa, mida algajad tihti segi ajavad:
- redaktor (ülemine, valge ala) – siia kirjutatakse programm, mis salvestatakse failina ja mida saab uuesti käivitada;
- käsurea paneel ehk shell (alumine ala, kus on märk
>>>) – siin näeb programmi väljundit ja siia saab kirjutada üksikuid käske kohe proovimiseks. Shelli kirjutatu ei salvestu.
Kiireks katsetamiseks on shell suurepärane, aga kursuse ülesanded kirjutatakse alati redaktorisse ja salvestatakse failina.
Esimene programm
Alustuseks koostame lihtsa programmi, mis väljastab ekraanile Tere Maailm!.
Kirjuta või kopeeri tühja redaktorisse järgnev üherealine programm:
print("Tere Maailm!")
Salvesta fail klahvikombinatsiooniga Ctrl+S, lisades failinime lõppu laiendi .py, näiteks teremaailm.py. Taolist Pythoni programmi sisaldavat tekstifaili nimetame edaspidi skriptiks.
Programmi käivitamiseks vajuta rohelist noolega nuppu või klahvi F5. Käsurea paneeli peaks tekkima uus rida tekstiga Tere Maailm!.
Nagu võid järeldada, tähendab print Pythoni jaoks teksti ekraanile kuvamist, mitte printerisse saatmist. Selleks, et Python suudaks teha vahet käskudel ja tavalisel tekstil, kirjutatakse tekst jutumärkide vahele.
NB! Failide nimetamine
- Tee oma programmeerimisharjutuste jaoks kohe eraldi kaust – ülesandeid tuleb semestri jooksul palju.
- Failinimes kasuta ainult tähti a–z, numbreid ja alakriipsu. Väldi tühikuid ja täpitähti.
- Ära pane failile nime, mis kattub mõne Pythoni mooduli nimega (
math.py,random.py,turtle.py,string.py). Vastasel juhul üritab Python hiljemimport mathpeale importida sinu enda faili ja tulemuseks on väga segadusttekitavad veateated.
Logimine
Kursusel tuleb kontrolltöödes ja eksamil lisaks programmidele esitada ka logifailid. Nende abil saab kontrollida arvutiosa ülesannete lahenduskäiku. Vaatame, kuidas Thonny logimine sisse lülitada.
Vali menüüribalt Tools -> Options..., ava sakk General ja tee linnuke valiku Log program usage events ette. Seejärel taaskäivita Thonny.
Logifailid tekivad kausta, mille leiab menüüst Tools -> Open Thonny data folder... -> user_logs. Iga Thonny käivituskorra kohta tekib eraldi fail, mille nimes on kuupäev ja kellaaeg.
Kui logimine on sisse lülitatud, ilmub menüüsse ka käsk Tools -> Export usage logs..., mis pakib kõik logifailid ühte zip-faili. Esitamiseks on see kõige mugavam viis.
NB!
Logid salvestatakse Thonny sulgemisel. Seega selleks, et praeguse töösessiooni logi kätte saada, tuleb Thonny kõigepealt sulgeda (või taaskäivitada) ja alles seejärel logifaili otsida.
Logid on kohustuslikud kontrolltöödes ja eksamil. Lisaks tuleb neid esitada kodutöödes ja praktikumitöödes juba nädal enne kontrolltööd – nii tekib harjumus ja tuleb välja, kui logimisega on midagi valesti, enne kui see hindele mõjuma hakkab.
Lahenduse pistikprogramm
Keskkonnas Lahendus hakkame esitama kodutöid ja praktikumide lahendusi. Koodi saab sinna küll kopeerida ka otse veebilehele, kuid palju mugavam on ülesandeid lahendada ja esitada otse Thonny sees.

Variant A (tavaline). Mine Tools -> Manage plug-ins..., otsi pistikprogramm thonny-lahendus, paigalda see ja taaskäivita Thonny.
Variant B. Mine Tools -> Open system shell... ja trüki pip3 install thonny-lahendus, seejärel taaskäivita Thonny.
Variant C (kui kaks eelmist ei õnnestu). Laadi pistikprogramm käsitsi alla lehelt pypi.org/project/thonny-lahendus jaotisest "Download files". Seejärel vali Tools -> Manage plug-ins... ja sealt "Install from local file".
Pärast Thonny taaskäivitamist leiad pistikprogrammi menüüst View -> Lahendus. Avaneb paneel, kus saab Lahenduse kasutajanime ja parooliga sisse logida ning ülesandeid avada ja esitada.
Thonny Lahenduse pistikprogrammi tutvustav video
Silumine ehk debugging
Kui programmis on viga või tahad täpselt aru saada, kuidas mingi koodijupp töötab, on parim abivahend silumine (ingl debugging). Silur laseb programmi käivitada rea kaupa ja näitab iga hetk, millised on muutujate väärtused.
Silumise alustamiseks vajuta rohelise noole asemel selle kõrval olevat putuka-nuppu või klahve Ctrl+F5. Programm peatub esimesel real ja edasi saad liikuda samm-sammult.
| Nupp | Klahv | Mida teeb |
|---|---|---|
| Debug | Ctrl+F5 | käivitab programmi siluris |
| Over | F6 | täidab järgmise rea tervikuna |
| Into | F7 | astub avaldise või funktsiooni sisse |
| Out | (klahvi pole) | täidab praeguse funktsiooni lõpuni ja naaseb väljakutsujasse |
| Resume | F8 | jätkab tavapärast käivitamist |
| Stop | Ctrl+F2 | katkestab töö |
Selleks et ei peaks tervet programmi mõttetult läbi ketrama, saab määrata peatuspunkte (ingl break point). Vajuta soovitud rea numbrile – sinna tekib punane täpp ja silumisel peatub programm täpselt seal. Punkti eemaldamiseks vajuta täpile uuesti.

Katsetus
Silur on kõige kasulikum siis, kui programm annab vale tulemuse, aga veateadet ei tule. Proovi mõne oma varasema programmiga: käivita see Ctrl+F5-ga, liigu F6-ga rida-realt edasi ja jälgi paremal muutujate tabelit. Sealt on kohe näha, millisel real muutuja väärtus ootamatuks muutub.
Kommenteerimine
Kommentaar on koodi sisse kirjutatud tekst, mida Python ei täida. Kommentaare kasutatakse selleks, et selgitada mõne koodijupi toimimist, lisada viiteid või teha mõni koodirida ajutiselt "kahjutuks". Selleks on mitu viisi.
Ühe rea kommenteerimine. Kõik, mis on real trellide # järel, on kommentaar:
# kommentaar
# print("Tere Maailm!")
print("Tere Maailm!") # kommentaar rea lõpus
Terve ploki kommenteerimine Thonnys. Vali soovitud read ära (highlight) ja vajuta Ctrl+3. Thonny lisab iga rea algusesse trellid ja tühiku. Sama klahvikombinatsioon võtab need ka tagasi, kui read on juba kommenteeritud. (Menüüst Edit leiab eraldi käsud Comment out (Alt+3) ja Uncomment (Alt+4).)
Kolmekordsed jutumärgid. Mitu rida korraga saab "välja lülitada" ka nii, et ümbritsed need kolmekordsete jutumärkidega """ või ''':
"""
print("Tere Maailm!")
See tekst ei tee midagi (järgmine rida ka mitte)
print("Tere Maailm!")
"""
NB!
Kolmekordsete jutumärkidega ümbritsetud tekst ei ole tegelikult kommentaar, vaid mitmerealine sõne, mille Python arvutab välja ja seejärel kohe unustab. Enamasti on tulemus sama, aga päris kommentaari asemel seda kasutada ei tasu – erandiks on funktsiooni esimene rida, kus selline sõne on funktsiooni ametlik kirjeldus (docstring).
Levinumad probleemid
| Probleem | Tõenäoline põhjus | Lahendus |
|---|---|---|
| Programm ei käivitu ega salvestu | kood on kirjutatud alumisse käsurea paneeli, mitte redaktorisse | Kirjuta kood ülemisse aknasse ja salvesta fail |
SyntaxError juba esimeses programmis | jutumärgid on puudu või tekstiredaktor on need asendanud "kaunite" jutumärkidega („ ”) | Kirjuta rida Thonnys uuesti, ära kopeeri seda Wordist |
| Kood ei ole värviline ega käivitu korralikult | fail on salvestatud ilma laiendita .py | Salvesta fail uuesti õige nimega |
import math käitub arusaamatult | mõni sinu fail kannab nime math.py (või muu mooduli nime) | Nimeta oma fail ümber |
Lahenduse paneeli menüüs View ei ole | Thonny on pärast paigaldust taaskäivitamata | Taaskäivita Thonny |
Logifaili ei ole kaustas user_logs | logimine on sisse lülitamata või Thonny on veel avatud | Kontrolli linnukest Options all ja sulge Thonny |
Kokkuvõte
Enne edasiminekut veendu, et:
- Thonny avaneb;
print-käsklus töötab ja programmi saab salvestada.pyfailina;- logimine on sisse lülitatud ja oskad logifailid üles leida;
- pistikprogramm thonny-lahendus on paigaldatud;
- esimese programmi esitamine lahendus.ut.ee-sse õnnestub. Ka null-punktine testesitus enne õiget lahendamist toob pistikprogrammi probleemid välja.