KMI/PJ Jazyk Python
Cílem předmětu je seznámit studenty s programováním v jazyce Python, který patří mezi nejpopulárnější programovací jazyky současnosti. Předpokládá se pokročilejší znalost procedurálního programování (znalost jazyka Python není vyžadována) a algoritmizace. Při výuce je kladen důraz na efektivní a praktické použití jazyka Python.
Seznam seminářů
Obsah následujících stránek je pouze doprovodný materiál, nenahrazuje účast na semináři.
- 1. Úvod a základy jazyka Python
- 2. Sekvence a cykly
- 3. Funkce a moduly
- 4. Výjimky a dekorátory
- 5. Objektově orientované programování (OOP)
- 6. Dunder metody a dekorátory tříd
- 7. Iterátory a comprehension
- 8. Práce se souborovým systémem
- 9. Itertools a funkce vracející iterátory
- 10. Testování (pytest) a type hinting
- 11. Ostatní moduly standardní knihovny
Co je potřeba na první seminář?
- Vlastní počítač (volitelně, na učebně budou připravené počítače, není jich však dostatek pro všechny studenty).
- Nainstalovaný jazyk Python 3.9+ ke stažení zde.
- Účet na Github.com.
- Stažený a nainstalovaný git klient GitHub Desktop.
- Stažené a nainstalované vývojářské studio Visual Studio Code (volitelně).
- Osobní číslo studenta ze systému STAG (např. R180055).
Splnění předmětu
Průběžné úkoly
Úkoly budou zadávány na platformě Gihub Classroom. Pro plnění úkolů je nutné vytvořit bezplatný účet na Github.com a nainstalovat klienta GitHub Desktop. Demonstrace systému proběhne na prvním semináři (Jak pracovat s Github Classroom?).
Na každém semináři bude zadáno několik úkolů. Úkoly je nutné odevzdat vždy do dalšího semináře. Pokud bude řešení nevyhovující, termín splnění se posune o další týden. Pokud ani do té doby student neodevzdá správné řešení tak úkol nebude uznán. Za celý předmět je možné nesplnit až 8 úkolů (jedinou vyjimkou je balíček data
, ten musí být odevzdán a uznán v poslední verzi).
Kdy dostanu zpětnou vazbu?
Před obdržením zpětné vazby je nutné splnit veškeré automatizované testy na platformě Gihub Classroom. Více informací lze přečíst zde. Veškeré úkoly, které prošly automatickým testováním se pokusím opravit během prvního týdne od zadání (zelený obdélník na obrázku). Pokud by došlo ke zdržení, deadline na finální odevzdání (červený obdélník na obrázku) bude prodloužen.
Co vše je na úkolu hodnoceno?
- Splnění zadání.
- Kvalita a přehlednost zdrojového kódu.
- Dodržovaní style guide PEP8 (bude postupně představováno na seminářích).
Plagiátorství
Veškeré odevzdané zdrojové kódy jsou automaticky testované na plagiátorství systémem Moss. Při prokázaném plagiátorství ztrácí oba studenti/studentky nárok na získání zápočtu a situaci dále řeší vedoucí katedry.
Přehled uznaných úkolů je dostupný zde.
Soubor .gitignore
pro Python 3
Při práci na úkolech bude vytvářeno velké množství souborů, které nechcete odesílat k odevzdání. Základní sadu souborů můžete jednoduše ignorovat umístěním speciálního souboru .gitignore
do hlavní složky s úkolem. Obsah ukázkového .gitignore
souboru naleznete zde.
V případě, že Vaše vývojové prostředí vytváří podpůrné složky (například složka .idea/
) je možné tuto složku přidat do souboru .gitignore
.