The introductory Python course provides the students with the programming basics needed for data processing
and visualization. Focus on scientific applications allows the students to use the acquired knowledge right away for
both study purposes and practical applications. Python is currently one of the most popular languages widely used
in science. Thanks to its simple syntax it is well suited for beginners.
Last update: Mgr. Hana Kudrnová (15.04.2021)
Základní kurz programování v jazyce Python provede studenty fyzikálních oborů od krátkých skriptů přes
zpracování dat k vizualizaci výsledků. Zaměření na fyzikální aplikace umožní absolventům získané znalosti
okamžitě prakticky využívat při studiu, studentských projektech i případném zapojení do výzkumných prací.
Python je moderní programovací jazyk široce používaný v mnoha fyzikálních oborech. Je vhodný i pro úplné
začátečníky. Důraz bude kladen na úvodní kapitoly, proto předchozí znalosti programování nejsou nutné.
Aim of the course -
Last update: Mgr. Michal Belda, Ph.D. (20.04.2021)
Learn the basics of programming in the Python language with a focus on mathematical and physical applications, mainly data processing and visualization.
Last update: Mgr. Hana Kudrnová (15.04.2021)
Seznámit se s programovacím jazykem Python a jeho využitím pro matematické a fyzikální aplikace
Naučit se psát programy pro zpracování a vizualizaci dat
Course completion requirements -
Last update: Mgr. Michal Belda, Ph.D. (20.04.2021)
For credit, a student may either submit three shorter Python programs over the course of the semester. Alternatively, one longer program may be submitted at the end of the semester.
Last update: Mgr. Hana Kudrnová (15.04.2021)
Podmínkou udělení zápočtu je průběžné zpracování domácích úloh během semestru. Alternativně mohou studenti na konci semestru vypracovat jednu úlohu většího rozsahu. Charakter podmínek zakončení předmětu vylučuje opakování.
Literature -
Last update: Mgr. Michal Belda, Ph.D. (20.04.2021)
Pilgrim, M.: Ponořme se do Pythonu 3. http://diveintopython3.py.cz/index.html
Harms, D. & McDonald, K.: Začínáme programovat v jazyce Python. Computer Press, Praha, 2003.
Teaching methods -
Last update: Mgr. Michal Belda, Ph.D. (20.04.2021)
The course is realized as a lecture and practical exercises (bring your own laptop if you can).
Last update: Mgr. Hana Kudrnová (15.04.2021)
Výuka předmětu probíhá formou přednášky a cvičení na počítači (vlastní notebook výhodou).
Syllabus -
Last update: Mgr. Michal Belda, Ph.D. (20.04.2021)
Introduction to Python: language basics, history and versions (2 and 3), comparison to other languages; Python philosophy (short readable code, batteries included)
IPython console, Jupyter notebooks; integrated development environments and Python distributions; short simple single-purpose scripts
Python building blocks: syntax, variables, data types, builtins; procedural programming basics - loops, conditions, functions; syntactic sugar - do more with less code
Libraries: builtin libraries and modules, extensions.
Scientific computing: NumPy and SciPy libraries for processing vector and matrix data, statistics; processing tabular data with pandas
Input/Output: formatting, file formats, reading and writing files; specialized libraries for data used in math and physics
Visualization: creating graphs using matplotlib, seaborn and pandas
Graphical User Interface: basics of GUI using builtin libraries
Last update: Mgr. Hana Kudrnová (15.04.2021)
Úvod do jazyka Python: základní použití, historie a verze, srovnání s jinými jazyky; filozofie jazyka Python (přehledný jednoduchý kód, velké množství vestavěných knihoven)
Konzole IPython pro interaktivní práci (IPython Notebook), vývojová prostředí a distribuce Python(x,y); tvorba krátkých jednoúčelových skriptů
Stavební kameny Pythonu: syntaxe jazyka, proměnné, datové typy, vestavěné příkazy; základy procedurálního programování - cykly, podmínky, funkce; syntaktický cukr - jak s méně řádky kódu dosáhnout stejných výsledků
Knihovny funkcí: použití vestavěných modulů, instalace a použití doplňujících knihoven, tvorba vlastních modulů
Vědecké výpočty: knihovny NumPy a SciPy pro práci s maticovými daty, numerické výpočty, statistické zpracování a další; knihovna pandas pro načítání a zpracování tabulkových dat
Ukládání dat: formátování výstupu, formáty souborů, čtení a zápis dat z/do souborů a databází; knihovny pro práci s formáty používanými ve fyzikálních oborech
Vizualizace: tvorba grafů pomocí knihoven matplotlib a pandas