Arvutiteaduse instituut
Courses.cs.ut.ee Arvutiteaduse instituut Tartu Ülikool
  1. Kursused
  2. 2026/27 sügis
  3. Programmeerimine (LTAT.03.001)
EN
Logi sisse

Programmeerimine 2026/27 sügis

  • Üldinfo
  • 1. Muutuja ja avaldis
1.1 Alustamine Thonnyga
1.2 Pythoni põhimõisted
1.3 Kodutöö
1.4 Harjutused
1.5 Silmaring. Standardteek ja moodulid
  • 2. Tingimuslause
  • 3. Funktsioon
  • 4. Korduslause
  • 5. Sõned. Lihtsam failitöötlus
  • 6. Kontrolltöö 1
  • 7. Järjend
  • 8. Järjend 2
  • 9. Kahekordne tsükkel. Failitöötlus
  • 10. Andmestruktuurid
  • 11. Andmestruktuurid 2
  • 12. Kontrolltöö 2
  • 13. Objektorienteeritud programmeerimine
  • 14. Objektorienteeritud programmeerimine 2
  • 15. Rekursioon
  • 16. Kordamine. Projektide esitlused
  • Viiteid
  • Silmaringimaterjalid
  • Materjalid

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 hiljem import math peale 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.

NuppKlahvMida teeb
DebugCtrl+F5käivitab programmi siluris
OverF6täidab järgmise rea tervikuna
IntoF7astub avaldise või funktsiooni sisse
Out(klahvi pole)täidab praeguse funktsiooni lõpuni ja naaseb väljakutsujasse
ResumeF8jätkab tavapärast käivitamist
StopCtrl+F2katkestab 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

ProbleemTõenäoline põhjusLahendus
Programm ei käivitu ega salvestukood on kirjutatud alumisse käsurea paneeli, mitte redaktorisseKirjuta kood ülemisse aknasse ja salvesta fail
SyntaxError juba esimeses programmisjutumä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 korralikultfail on salvestatud ilma laiendita .pySalvesta fail uuesti õige nimega
import math käitub arusaamatultmõni sinu fail kannab nime math.py (või muu mooduli nime)Nimeta oma fail ümber
Lahenduse paneeli menüüs View ei oleThonny on pärast paigaldust taaskäivitamataTaaskäivita Thonny
Logifaili ei ole kaustas user_logslogimine on sisse lülitamata või Thonny on veel avatudKontrolli linnukest Options all ja sulge Thonny

Kokkuvõte

Enne edasiminekut veendu, et:

  1. Thonny avaneb;
  2. print-käsklus töötab ja programmi saab salvestada .py failina;
  3. logimine on sisse lülitatud ja oskad logifailid üles leida;
  4. pistikprogramm thonny-lahendus on paigaldatud;
  5. esimese programmi esitamine lahendus.ut.ee-sse õnnestub. Ka null-punktine testesitus enne õiget lahendamist toob pistikprogrammi probleemid välja.

PyCharm Thonny asemel

Kui tunned, et Thonny ei paku piisavalt mugavusi/võimalusi, siis lubame kasutada ka näiteks PyCharm programmeerimiskeskkonda. Ka sellega saab Lahenduse plugin-a ühendada.

(internal link) PyCharmi eestikeelne juhend

(external link) PyCharmi eestikeelne juhend

PS! Kontrolltöödes on lubatud ainult Thonny kasutamine ja vastavalt on kohustuslik Thonny kasutuslogide esitamine.

  • Arvutiteaduse instituut
  • Loodus- ja täppisteaduste valdkond
  • Tartu Ülikool
Tehniliste probleemide või küsimuste korral kirjuta:

Kursuse sisu ja korralduslike küsimustega pöörduge kursuse korraldajate poole.
Õppematerjalide varalised autoriõigused kuuluvad Tartu Ülikoolile. Õppematerjalide kasutamine on lubatud autoriõiguse seaduses ettenähtud teose vaba kasutamise eesmärkidel ja tingimustel. Õppematerjalide kasutamisel on kasutaja kohustatud viitama õppematerjalide autorile.
Õppematerjalide kasutamine muudel eesmärkidel on lubatud ainult Tartu Ülikooli eelneval kirjalikul nõusolekul.
Courses’i keskkonna kasutustingimused