course aims in Estonian
Arendada analüütilist ja loogilist mõtlemist ning süsteemset lähenemist probleemide ja ülesannete lahendamisel; anda algteadmised programmeerimisest; arendada iseseisva töötamise oskust.
course aims in English
This course aims to provide an overview to the Python, also provides the skills and knowledge for using and improving existing Python tools.
learning outcomes in the course in Est.
Õppeaine läbinud üliõpilane:
- realiseerib lihtsa ülesande programmina programmeerimiskeeles Python, kasutades seejuures erinevaid baaskonstruktsioone ja andmetüüpe (täisarvud, ujukomaarvud, sõned, järjendid), muutujaid, operatsioone, graafikavahendeid ning andmevahetust failidega;
- leiab, sõnastab ja lahendab enda eri- või huvialaga seotud programmeerimisülesandeid;
- kasutab põhilisi programmeerimiskonstruktsioone: muutuja, avaldis, omistuslause, tingimuslause, tsükkel, alamprogramm, rekursioon, andmevahetus kasutaja ja failidega;
- tunneb põhilisi andmetüüpe ja -struktuure (täis- ja ujukomaarvud, tõeväärtused, sõned, järjendid, hulgad, sõnastikud, ennikud) ning oskab kasutada vastavaid standardoperatsioone;
- analüüsib ja selgitab üksikasjalikult programmi töö käiku ning oskab programmi laiendada;
- loob lihtsamat ülesannet lahendava algoritmi, koostab ja vormistab korrektselt lahendusprogrammi ning silub ja testib seda;
- kasutab Pythoni paketihaldusüsteemi;
- tunneb levinumaid teeke eri ülesannete lahendamiseks;
- koostab ja hindab programme hea programmeerimisstiili alusel;
- saab baastasemel aru keerukusteooriast ja algoritmikast;
- tunneb Pythoni arenduse häid tavasid;
- koostab baastasemel graafilisi kasutajaliideseid.
learning outcomes in the course in Eng.
After completing the course, the student:
- knows how to write programs in Python;
- uses Python package management ecosystem;
- is familiar with file input and output;
- is able to build basic user interfaces;
- is able to do basic web programming;
- solves problems and decompose programs using functions, modules and object-oriented programming;
- writes programs that have good and readable programming style;
- has basic knowledge of complexity theory and algorithms;
- knows fundamental data structures: list, dictionary, graph, tree;
- knows commonly used libraries for specific tasks.
brief description of the course in Estonian
Arv- ja tekstandmete esitamine arvutis. Arvusüsteemid. Üldotstarbelise programmeerimiskeele süntaks ja semantika. Lihtsamad algoritmid: summeerimine, loendamine, suurim ja vähim väärtus. Tegevusskeem algoritmide esitamiseks. Muutujad. Lihtandmetüübid. Struktuursed andmetüübid. Aritmeetika- ja loogikaavaldised. Omistamine. Sisend. Väljund. Juhtstruktuurid: jada, valik ja kordus ning vastavad
keeletarindid. Funktsioonid ja parameetrite edastamine. Tekstifailide kasutamine. Programmi koostamise tüüpilised sammud, testimine ja silumine.
brief description of the course in English
Standard library and external libraries. Unit testing and environment switching. Documentation and Packaging.Different dialects and Python variants. Working with databases. Network utilities, web crawling and scraping, web services. Scientific computing and data analysis. Plotting and images. Foreign Function Interfaces. Debugging and tracing.
type of assessment in Estonian
Hinne pannakse lahendatud testide, programmeerimisülesannete ja projektitöö alusel.
type of assessment in English
Course is rated by solutions to programming tasks.
independent study in Estonian
koduülesanded
independent study in English
excercises
study literature
How to Think Like a Computer Scientist
http://openbookproject.net/thinkcs/python/english3e/
Varmo Vene, Programmeerimise algkursus
https://courses.cs.ut.ee/all/MTAT.03.100/2012_fall/uploads/opik/
- Allen Downey. Learning with Python. Dreamtech 2015
- Allen Downey. Think Python: How to Think Like a Computer Scientist. Free e-book - http://www.greenteapress.com/thinkpython/thinkpython.pdf
- Dive Into Python, Mark Pilgrim
- Learn Python the Hard Way, Zed Shaw
- Lisa Tagliaferri. How to code in Python. Digitalocean 2018. Free e-book: https://blog.digitalocean.com/how-to-code-in-python-ebook/
study forms and load
daytime study: weekly hours
4.0
session-based study work load (in a semester):
practices
2.0
practices
20.0