Funkce, dekorátory a lambda výrazy v Pythonu

Funkce jsou stavebními kameny každého programu. Naučíme se psát čisté funkce, používat anonymní lambda výrazy a pochopíme, jak fungují dekorátory a k čemu se hodí.

Funkce, dekorátory a lambda výrazy v Pythonu

V tomto článku si projdeme definici funkcí, předávání argumentů, anonymní lambda výrazy a dekorátory — mocné nástroje pro úhledný, opakovaně použitelný kód.

Definice funkce

Základní funkce vypadá takto:

def greet(name):    return f\"Ahoj, {name}!\"\nprint(greet(\"Jana\"))

Funkce mohou mít výchozí argumenty a klíčové argumenty (kwargs).

Lambda výrazy

Lambda je anonymní funkce vhodná pro krátké jednorázové použití:

add = lambda x, y: x + y\nprint(add(2, 3))

Lambda se často používá jako argument funkce (např. v map nebo sort).

Dekorátory

Dekorátor je funkce, která obaluje jinou funkci a rozšiřuje její chování bez úpravy původního kódu:

def timing(func):    import time    def wrapper(*args, **kwargs):        start = time.time()        result = func(*args, **kwargs)        print(f\"Elapsed: {time.time() - start:.4f}s\")        return result    return wrapper@timing\ndef compute():    sum(range(1000000))\ncompute()

Dekorátory jsou užitečné pro logging, měření výkonu, autorizaci a další cross-cutting concerns.

V dalším článku přejdeme na objektově orientované programování — třídy, dědičnost a design patterny v Pythonu.

@admin

18. května 2025


Komentáře 0