course aims in Estonian
Programmeerimise olemusest arusaamine. Programmeerimise baasoskuste omandamine ja arendamine programmeerimiskeele Python alusel. Programmeerimisoskuse kasutamine inseneriteadustes esile kerkivate probleemide analüüsimisel ja lahendamisel.
course aims in English
Understanding the essence of programming. Mastering and developing programming skills in Python. Using programming skills in analysing and resolving problems from engineering and science.
learning outcomes in the course in Est.
Üliõpilane:
- saab aru programmeerimise olemusest (suhted inimese, tarkvara ja riistvara vahel) ja oskab programmeerida etteantud algoritme programmeerimiskeeles Python;
- oskab lugeda ja arusaada etteantud programmide funktsionaalsusest ning taaskasutada olemasolevaid programme;
- oskab leida ja installeerida Pythoni mooduleid, mis on sobivad käsilolevate algoritmide efektiivseks programmeerimiseks, sh arvestada küberturvalisuse aspekte;
- oskab koostada graafikuid andmete visualiseerimiseks nii kuvaril kui ka teadustööde dokumentides.
learning outcomes in the course in Eng.
Student:
- understands the essence of of programming (relations between human, software and hardware) and knows how to implement given algorithms in Python programming language;
- can read and understand the functionality of given programs and reuse existing programs;
- knows how to find and install Python packages that are suitable for implementing algorithms at hand in an efficient way, and at the same time taking into account the aspects of cybersecurity;
- knows how to make graphs for visualizing data both on screen as well as in scientific reports.
brief description of the course in Estonian
Programmeerimise olemus. Programmeerimiskeele Python ja selle töövahendite ülevaade. Pythoni süntaks ja programmi struktuur. Standardsed andmetüübid (int, float, complex, str/unicode, bool, list, tuple, dict, set, object, type), objektide defineerimine ja kasutamine. Muutujate defineerimine ja kasutamine. Avaldised (tehted erinevat andmetüüpi objektidega: +, -, *, /, //, **, %, not, and, or, |, &, ^, [], (), in, is, <, >, ==, !=,tehete prioriteetsus) ja lausendid (del, for, while, if-elif-else, try-except/with, break/continue/pass). Standardsed funktsioonid (print, range, tüübi teisendused, jne), funktsioonide defineerimine (def ja return lausendid, lambda avaldis) ja kasutamine, generaatorid (yield lausend), dekoraatorid (@ operaator). Objekt orienteeritud programmeerimise alused (class lausend). Standardsed moodulid, moodulite loomine ja kasutamine (import ja from lausendid), moodulite installeerimine (Anaconda, pip). Andmefailide loomine ja kasutamine. Teadusarvutuse paketid (numpy, scipy, matplotlib) ja töökeskkonnad (Thonny, IPython). Programmide dokumenteerimine ja publitseerimine, sh andmete jagamine arvutivõrkudes.
brief description of the course in English
Essence of programming. Overview of programming language Python and its tools. Python syntax and program structure. Standard data types (int, float, complex, str/unicode, bool, list, tuple, dict, set, object, type), defining and using objects. Defining and using variables. Expressions (operations with objects of various data types: +, -, *, /, //, **, %, not, and, or, |, &, ^, [], (), in, is, <, >, ==, !=, priority of operations) and statements (del, for, while, if-elif-else, try-except/with, break/continue/pass). Standard functions (print, range, type transformations, etc), defining and using functions (def, return statements, lambda expression), generators (yield statement), decorators (@ operator). Basics of object-oriented programming (class statement). Standard packages, creating and using modules (import, from statements), installing packages (Anaconda, pip). Creating and using data files. Packages for scientific computing (numpy, scipy, matplotlib) and work environments (Thonny, IPython). Documenting and publication of programs, including sharing data between computer networks.
type of assessment in Estonian
eksam
type of assessment in English
exam
independent study in Estonian
Tuleb lahendada iseseisva töö ülesanne, mis sisaldab järgmiseid elemente: etteantud algoritmide kodeerimist Pythoni keeles, andmete kirjutamist ja lugemist failidest, andmete visualiseerimist, teadusarvutuste pakettide kasutamist, programmi paketide koostamist ja publitseerimist.
independent study in English
A task will be given that includes the following elements: implementation of given algorithms in Python, data storage and loading from files, visualization of data, usage of scientific computing packages, creation and publication of Python programs.
study literature
The Python Tutorial. https://docs.python.org/3/tutorial/
Numpy and Scipy documentation. http://docs.scipy.org/doc/
Matplotlib. http://matplotlib.org/
Thonny: Python IDE for beginners. http://thonny.cs.ut.ee/
IPython: Interactive computing. https://ipython.org/
Anaconda: Open Data Science Platform. https://www.continuum.io/
PyPI: the Python Package index. https://pypi.python.org/pypi
study forms and load
daytime study: weekly hours
4.0
session-based study work load (in a semester):