Programování v Pythonu - N500005
Anglický název: Programming in Python
Zajišťuje: Ústav informatiky a chemie (143)
Fakulta: Fakulta chemické technologie
Platnost: od 2022
Semestr: letní
Body: letní s.:4
E-Kredity: letní s.:4
Způsob provedení zkoušky: letní s.:
Rozsah, examinace: letní s.:2/2, Z+Zk [HT]
Počet míst: neurčen / neurčen (neurčen)
Minimální obsazenost: neomezen
Stav předmětu: zrušen
Jazyk výuky: čeština
Způsob výuky: prezenční
Způsob výuky: prezenční
Úroveň:  
Je zajišťováno předmětem: B143008
Garant: Znamenáček Jiří Ing.
Je záměnnost pro: B143008, B500003
Termíny zkoušek   Rozvrh   
Anotace -
Cílem předmětu je naučit se efektivně používat základní řídící a datové struktury jazyka Python pro zpracování textů a binárních dat. Důraz bude kladen na zdůraznění rozdílů mezi filozofií programů v Pythonu a jiných programovacích jazycích. Studenti se též seznámí s hlavními rozdíly mezi ne zcela kompatibilními verzemi 2.x a 3.x jazyka.
Poslední úprava: Znamenáček Jiří (20.01.2014)
Výstupy studia předmětu -

Díky poměrně unikátní stavbě jazyka Python se studenti seznámí s tak rozdílnými přístupy k řešení problémů jako je použití iterátorů, uzávěrů, prvků funkcionálního programování a dalších. Zároveň se naučí pracovat se dvěma základními kameny každé seriózní programátorské práce - programování podle principů vývoje řízeného testy (TDD) a zaznamenávání svého postupu pomocí nástrojů pro správu verzí (DVCS).

Poslední úprava: Znamenáček Jiří (20.01.2014)
Literatura -

Z:Pilgrim, Mark: Dive Into Python 3. Apress, 2009. ISBN 978-1430224150

Z:Necaise, Rance D.: Data Structures and Algorithms Using Python. John Wiley & Sons, Inc, 2011. ISBN 978-0470618295

Poslední úprava: Jirát Jiří (10.01.2014)
Sylabus -

1. Úvod do možností jazyka. Operátory a logické výrazy. Základní dělení typů na proměnné a neproměnné.

2. Základní neproměnné typy: řetězce, čísla (celá, reálná, komplexní, zlomky).

3. Uživatelský vstup. Podmíněné příkazy a cykly: if, for, while, break.

4. Sekvenční typy: řetězce, seznamy, n-tice -- operace, metody, průchod smyčkou.

5. Mapovací typy: slovníky, množiny -- operace, metody, průchod smyčkou.

6. Binární data. Práce se soubory. Načítání dat z netu.

7. Funkce: argumenty (poziční a pojmenované), viditelnost proměnných, uzávěry, "lambda"-funkce, funkce jako "first class citizens".

8. Základní principy OOP v jazyce Python: třídy a jejich instance, dědičnost, introspekce, zvláštnosti OOP v Pythonu.

9. Chyby a výjimky: detekce a ošetření, vyvolávání, aserce, hierarchie standardních výjimek. Unit-testy: TDD = vývoj řízený testy, zavedení, použití, přípravné a "čistící" metody, zástupné objekty.

10. Pokročilé vlastnosti funkcí a tříd: dekorátory, generátory, funkcionální prvky, iterátory, magické metody a jejich aplikace (třídění, přetěžování operátorů).

11. Souborový systém. Interakce s prostředím.

12. Serializace datových struktur. Regexpy.

13. Moduly, standardní knihovna. Bajtkód interpretru CPython.

Poslední úprava: Jirát Jiří (10.01.2014)
Studijní opory -

https://edux.fit.cvut.cz/courses/BI-PYT

(nutné přihlášení)

Poslední úprava: Jirát Jiří (10.01.2014)
Studijní prerekvizity -

Předpokládá se znalost základů programování a algoritmizace na úrovni BI-PA1. Podrobné požadavky jsou uvedeny na stránce: https://edux.fit.cvut.cz/courses/BI-PYT

Poslední úprava: Jirát Jiří (10.01.2014)
Zátěž studenta
Činnost Kredity Hodiny
Účast na přednáškách 1 28
Práce na individuálním projektu 1 28
Příprava na zkoušku a její absolvování 0.7 20
Účast na seminářích 1 28
4 / 4 104 / 112