Intro

4th Aug 2026

Pekárnička

Naučíte sa:

  • Funkcie v jazyku Python
  • Preddvolené (default) argumenty
  • Šablóny reťazcov - f string

Na prvý pohľad sa ani nezdá, že ide o programátorskú úlohu. Cieľom je napísať funkciu, ktorá vráti vetu:

One for Alice, one for me.

ak je zadané meno, a

One for you, one for me.

ak meno zadané nie je.

Celé riešenie sa zmestí na jediný riadok. Napriek tomu sa v tejto malej úlohe skrýva niekoľko dôležitých konceptov jazyka Python. Pri jej riešení sa naučíte, čo sú funkcie, ako fungujú argumenty a parametre funkcií, ako predvolené hodnoty robia funkcie flexibilnejšími a prečo Python programátori radi používajú f-stringy.

Predstavte si, že pracujete v malej pekárni s netradičnou tradíciou. Každý zákazník dostane dva koláče – jeden pre seba a jeden pre pekára. Keď niekto vojde do pekárne, poviete:

„One for Alice, one for me.“

Samozrejme, nechcete tú istú vetu opakovať ručne pri každom zákazníkovi. Preto si vytvoríte malý stroj, ktorý to urobí za vás. V Pythone sa takýto stroj nazýva funkcia.

def two_fer():
    return "One for you, one for me."

Funkcia je jednoducho znovupoužiteľný kus programu. Keď ju raz vytvoríte, môžete ju zavolať vždy, keď ju budete potrebovať.

print(two_fer())

Takýto stroj však zakaždým vráti rovnakú vetu.

To funguje dovtedy, kým sa prvý zákazník nepredstaví.

Do pekárne vojde Alice. Stroj už nemá hovoriť „you“, ale „Alice“. Funkcia teda musí dostať informáciu z vonkajšieho sveta. Presne na to slúžia argumenty funkcie.

def two_fer(name):
    return f"One for {name}, one for me."

Premenná uvedená v zátvorkách pri definovaní funkcie sa nazýva parameter. Môžete si ju predstaviť ako prázdne miesto, ktoré čaká na vyplnenie. Keď funkciu zavoláte,

two_fer("Alice")

hodnota "Alice" sa vloží do tohto miesta. Táto hodnota sa nazýva argument.

Rozdiel medzi nimi je síce malý, ale dôležitý. Parameter patrí k definícii funkcie, zatiaľ čo argument je konkrétna hodnota, ktorú funkcii odovzdáte pri jej volaní. Predstavte si parameter ako prázdne políčko vo formulári a argument ako údaj, ktorý doň používateľ zapíše.

Vďaka tomu je funkcia oveľa flexibilnejšia. Už nepozná iba jednu vetu, ale dokáže vytvoriť nekonečne veľa rôznych viet.

two_fer("Alice")

vráti

One for Alice, one for me.

a

two_fer("Bob")

vráti

One for Bob, one for me.

Všetko funguje výborne, až kým si niekto nevezme koláč bez toho, aby povedal svoje meno.

Čo by sa malo stať v takom prípade?

Ak zavoláte funkciu bez argumentu,

two_fer()

Python oznámi chybu, pretože funkcia očakáva jeden argument, ale žiadny nedostala.

Našťastie Python umožňuje definovať predvolenú hodnotu parametra.

def two_fer(name="you"):
    return f"One for {name}, one for me."

Teraz sa funkcia správa správne v oboch situáciách. Ak pri volaní zadáte meno, Python použije práve toto meno. Ak meno nezadáte, automaticky použije hodnotu "you".

two_fer("Alice")

vráti

One for Alice, one for me.

zatiaľ čo

two_fer()

vráti

One for you, one for me.

Predvolené hodnoty parametrov patria medzi veľmi užitočné vlastnosti Pythonu. Umožňujú navrhovať funkcie, ktoré sa jednoducho používajú v bežných situáciách, pričom stále zostávajú dostatočne flexibilné aj pre zložitejšie prípady.

Teraz sa oplatí pozrieť bližšie na spôsob, akým funkcia vytvára výslednú vetu.

f"One for {name}, one for me."

Malé písmeno f na začiatku označuje formátovaný reťazec, často nazývaný aj f-string. Všetko, čo sa nachádza medzi zloženými zátvorkami {}, Python vyhodnotí a vloží priamo do výsledného textu.

Napríklad

name = "Alice"

print(f"Hello, {name}!")

vypíše

Hello, Alice!

Vo vnútri zložených zátvoriek nemusia byť iba premenné. Môžu tam byť aj výrazy alebo výpočty.

age = 20

print(f"Next year you'll be {age + 1}.")

vypíše

Next year you'll be 21.

Pred zavedením f-stringov programátori často spájali text pomocou operátora + alebo používali staršiu metódu .format(). F-stringy sú kratšie, prehľadnejšie a dnes predstavujú odporúčaný spôsob vytvárania textových reťazcov v modernom Pythone.

Previous Post

Intro