# 🐍 Programování v Pythonu - třída 1.IM Tento repozitář slouží jako **průběžně doplňovaný studijní materiál** pro naše hodiny programování. ## 🚀 Jak začít? 1. Ujistěte se, že máte nainstalovaný **Python 3**. 2. Pro úpravu kódu doporučuji **VS Code** (Visual Studio Code). 3. Soubory jsou číslovány chronologicky tak, jak jsme je v hodinách probírali. --- ## 📅 Co jsme se už naučili (Témata) 1. **Základy:** Výpis do konzole (`print`), proměnné, datové typy (`int`, `str`, `float`). 2. **Interakce:** Vstup od uživatele (`input`) a formátované výpisy (`f-strings`). 3. **Podmínky:** Rozhodování v programu pomocí `if`, `elif` a `else`. 4. **Cykly:** Opakování úkolů pomocí `while` (dokud platí podmínka) a `for` (pro seznam nebo rozsah). 5. **Ošetření chyb:** Aby program nespadl, když uživatel zadá nesmysl (`try` / `except`). 6. **Seznamy:** Práce s více hodnotami najednou (`list`), přidávání prvků a řazení. 7. **Soubory:** Jak v Pythonu vytvořit textový soubor, zapsat do něj data a zase je přečíst. 8. **Funkce:** Psaní vlastních bloků kódu (`def`), které můžeme opakovaně volat. 9. **Moduly a PIP:** Používání knihoven od jiných programátorů (generování QR kódů, kreslení grafů). 10. **API a Requests:** Stahování dat z internetu (vtipy, obrázky pokémonů). --- ## 📂 Průvodce soubory (Co kde najdu?) | Soubor / Složka | Tématika | Co se tam děje? | | :--- | :--- | :--- | | `01.py` | Základy | První krůčky, `print`, sčítání čísel a textů. | | `02_rychlokalkukvaska.py` | Matematika | Jednoduchá kalkulačka (vstup a výpočet). | | `03.py` až `06.py` | Logika | Procvičování podmínek, datových typů a jednoduchých úloh. | | `04_minihra.py` | Logika | První hra s cyklem `while` a hledáním klíče. | | `07.py` | Náhoda | Simulátor RPG kostky s modulem `random` a ošetřením chyb (`try/except`). | | `08.py` až `10.py` | Cykly a Seznamy | Pokročilejší práce s cykly a ukládáním dat. | | `11_kviz.py` | Projekt | Procvičování podmínek formou kvízu. | | `12_file.py` | Soubory | Zápis nákupního seznamu do `.txt` souboru a jeho čtení. | | `13_planety.py` | Seznamy | Hra "Vesmírná navigace" – práce se seznamy, náhodou a porovnáváním dat. | | `14_modules.py` | Moduly | Jak importovat a používat funkce z jiných souborů. | | `15_def.py` | Funkce | Definice vlastních funkcí (`def`) a práce s parametry. | | `15a_def_mat.py` | Funkce | Matematické operace zabalené do vlastních funkcí. | | `16.py` až `17.py` | Knihovny | Ukázky rozdělení kódu do knihoven (`lib_*.py`). | | `x_uhodni_cislo.py` | Projekt | Klasická hra na hádání náhodného čísla. | | `18_pip/` | Knihovny | Instalace balíčků a první grafy (`matplotlib`). | | `19_art/` | Projekty | Generování vlastních QR kódů pomocí knihovny `qrcode`. | | `20_requests/` | Internet | Stahování vtipů (Dad Jokes) a práce s JSON daty. | | `21_requests_p2/` | Internet | Pokračování práce s API a zpracování složitějších dat. | --- ## ⌨️ Užitečné zkratky (pro českou klávesnici) V kódu často narážíme na speciální znaky. Tady je tahák, jak je napsat: - **`#` (Komentář):** `Pravý Alt + X` - **`{ }` (Závorky pro f-string):** `Pravý Alt + B` (pro `{`) a `Pravý Alt + N` (pro `}`) - **`\` (Zpětné lomítko):** `Pravý Alt + Q` - **`" "` (Uvozovky):** `Shift + ů` (klávesa vpravo od L) - **`|` (Svislítko):** `Pravý Alt + W` --- ## 🛠️ Ke stažení a instalace Pokud si chceš vše připravit i na svém počítači, budeš potřebovat tyto dvě věci: 1. **Python 3:** [stáhnout zde](https://www.python.org/downloads/) - **DŮLEŽITÉ:** Při instalaci v prvním okně zaškrtni políčko **"Add Python to PATH"**. Bez toho ti nepůjde spouštět Python z terminálu. - Také se ujisti, že instaluješ i **pip** (bývá zaškrtnuto v pokročilém nastavení). 2. **Visual Studio Code (VS Code):** [stáhnout zde](https://code.visualstudio.com/download) - **DŮLEŽITÉ:** Doporučuji stáhnout verzi **System Installer** (nikoliv User Installer), aby se VS Code správně integrovalo do systému pro všechny uživatele. --- *Tento repozitář slouží jako studijní materiál. Pokud něčemu nerozumíš, zkus si soubor spustit a měnit v něm hodnoty – to je nejlepší způsob, jak se naučit programovat!*