Lekcie
Záverečný projekt
Dostal si sa až sem. Táto lekcia je pre teba - zhrň si, čo si sa naučil, a vyber si mini projekt, na ktorom svoje vedomosti vyskúšaš v praxi.
Gratulujeme!
Prešiel si 13 lekcií a po ceste si sa naučil veci, ktoré sú základom programovania nielen v Pythone, ale vo väčšine programovacích jazykov. Premenné, podmienky, cykly, zoznamy, funkcie.
V tejto lekcii nie je žiadna nová teória. Namiesto toho si zhrnieme všetko, čo sme prebrali, a na konci nájdeš niekoľko nápadov na mini projekty. Vyber si jeden, ktorý ťa zaujme, a skús ho naprogramovať.
Zhrnutie vedomostí
Nižšie je prehľad všetkých konceptov, ktoré sme prebrali v kurze.
| Koncept | Čo to je a na čo sa používa |
|---|---|
| Premenné | Úložisko dát v programe. Každá premenná má názov a hodnotu - napr. vek = 25 alebo meno = "Anna". |
| Dátové typy | int (celé číslo), float (desatinné číslo), str (text), bool (True/False). Každá hodnota má svoj typ, ktorý určuje, čo s ňou môžeme robiť. |
| print() a input() | print() vypíše hodnotu do konzoly. input() načíta vstup od používateľa ako str - ak potrebuješ číslo, musíš pretypovať. |
| Pretypovanie | Konverzia medzi typmi: int(), float(), str(). Napr. cislo = int(input("Zadaj číslo: ")). |
| Aritmetika | Základné operácie: +, -, *, /. Skrátený zápis: +=, -=, *=, /=. |
| Podmienky (if/elif/else) | Riadia tok programu, ktorý blok kódu sa vykoná. Používajú operátory porovnania (==, !=, >, <) a logické spojky (and, or, not). |
| Cyklus while | Opakuje blok kódu, kým platí podmienka. Výhodný vtedy, keď nevieme vopred, koľkokrát sa má opakovať. break ho ukončí. |
| Zoznamy (list) | Premenná, do ktorej môžeme uložiť viacero hodnôt. Pristupujeme cez index (od 0). append() pridá prvok, remove() ho vymaže, len() vráti dĺžku. |
| Cyklus for | Prechádza cez prvky zoznamu alebo rozsah čísel (range()). Výhodný vtedy, keď vieme vopred, čím všetkým chceme prejsť. |
| Funkcie (def) | Pomenovaný blok kódu, ktorý môžeme volať opakovane. Definujeme ich pomocou def. Môžu mať parametre a vracať hodnotu cez return. |
| return | Vracia hodnotu z funkcie na miesto, kde bola zavolaná. Po return sa funkcia okamžite ukončí. |
| Lokálne/globálne premenné | Lokálna premenná existuje len vo funkcii, kde bola vytvorená. Globálna je viditeľná z celého programu. |
| Knižnice | Hotové balíky funkcií, ktoré môžeme importovať a používať. Napr. import random na generovanie náhodných čísel. |
Zhrnutie syntaxe
| Čo chceš spraviť | Ako to zapísať |
|---|---|
| Vytvoriť premennú | meno = "Jano" |
| Výpis do konzoly | print(meno) |
| Načítať vstup | vstup = input("Zadaj niečo: ") |
| Pretypovať na int | cislo = int(vstup) |
| Podmienka | if vek >= 18: ... |
| Podmienka s else/elif | if x > 0: ... elif x == 0: ... else: ... |
| Cyklus while | while podmienka: ... |
| Cyklus for s range | for i in range(1, 6): ... |
| Cyklus for cez zoznam | for prvok in zoznam: ... |
| Definícia funkcie | def pozdrav(meno): ... |
| Volanie funkcie | vysledok = pozdrav("Mišo") |
| Pridanie do zoznamu | zoznam.append(hodnota) |
| Vymazanie zo zoznamu | zoznam.remove(hodnota) |
| Import knižnice | import random |
Mini projekt
Nižšie nájdeš štyri nápady na mini projekty. Každý z nich využíva koncepty z tohto kurzu. Ak si chceš dať väčšiu výzvu, skús si projekt rozšíriť o niečo navyše (pridanie/zmenenie funkcionality, apod.)
Tip: Začni jednoduchšie - najprv rozmýšľaj, čo program musí vedieť robiť. Potom si to rozlož na malé kroky a programuj krok po kroku.
Projekt #1: Hádaj číslo
Program si náhodne vyberie číslo od 1 do 20 (použi knižnicu random). Používateľ hádá, program mu po každom pokuse hovorí, či je jeho tip príliš malý, príliš veľký alebo správny. Program si počíta počet pokusov a na konci ho vypíše.
Čo budeš potrebovať:
- import random a random.randint()
- cyklus while (nevieme vopred, koľko pokusov bude treba)
- podmienky if/elif/else
- premenná ako počítadlo
- vstup od používateľa a pretypovanie na int
Projekt #2: Kalkulačka
Program sa používateľa opakovane pýta, aké dve čísla chce vypočítať a akú operáciu (sčítanie, odčítanie, násobenie, delenie). Po každom výpočte sa opýta, či chce pokračovať alebo skončiť. Každú operáciu implementuj ako samostatnú funkciu.
Čo budeš potrebovať:
- funkcie s parametrami a return
- vstup od používateľa
- podmienky (výber operácie)
- cyklus while (pokým používateľ nechce skončiť)
- ošetrenie delenia nulou
Projekt #3: Nákupný zoznam
Jednoduchá konzolová aplikácia na spravovanie nákupného zoznamu. Používateľ môže pridávať položky, odoberať ich, zobraziť celý zoznam a skončiť. Program beží v slučke, kým používateľ nezadá príkaz na ukončenie.
Čo budeš potrebovať:
- zoznam (list) - append(), remove()
- cyklus while s menu (výber možností)
- podmienky pre každú voľbu
- funkcie pre jednotlivé operácie (pridaj, odober, vypíš)
- overenie, či položka v zozname existuje pred odstránením
Projekt #4: Jednoduchý kvíz
Program obsahuje zoznam otázok a správnych odpovedí. Postupne sa používateľa pýta na každú otázku, kontroluje odpoveď a na konci zobrazí skóre (koľko správnych odpovedí z celkového počtu). Otázky si zvol na akúkoľvek tému.
Čo budeš potrebovať:
- zoznam otázok a zoznam správnych odpovedí (alebo zoznam dvojíc)
- cyklus for na prechádzanie otázkami
- podmienka na kontrolu odpovede
- počítadlo správnych odpovedí
- formátovaný výpis skóre na konci
Čo ďalej?
Ak si úspešne dokončil tento kurz a vieš riešiť jednoduché problémy v Pythone, si pripravený ísť hlbšie. Niekoľko smerov, ktorými sa môžeš vydať:
- Objektovo orientované programovanie (OOP) - triedy, objekty, dedičnosť. Ďalší logický krok po funkciách.
- Práca so súbormi - čítanie a zápis do .txt alebo .csv súborov. Užitočné pre každý reálny projekt.
- Knižnice pre dáta - pandas, numpy. Ak ťa zaujíma analýza dát alebo AI.
- Tvorba webových aplikácií - knižnice Flask alebo Django. Ak chceš programovať weby.
- Hry - knižnica pygame. Jednoduchý spôsob, ako si precvičiť logiku a mať zo programovania zábavu.
- Prejsť na iný programovací jazyk – ak si pochopil základné princípy Pythonu, tak ich vieš aplikovať v iných programovacích jazykoch. Jediný zásadný rozdiel bude syntax. Ak sa ti Python nepozdáva, môžeš skúsiť iné jazyky – C/C++, C# alebo ísť napríklad do vývoja webov (JavaScript, PHP).
Najdôležitejšia vec je programovať pravidelne. Aj 20 minút denne robí po čase veľký rozdiel. Najlepší spôsob, ako sa zlepšovať, je riešiť problémy.
Veľa šťastia!