Přejít na téma:
Funkce v Pythonu
Na cvičení:
Kód kostky
Zpět na modul :
Shrnutí blokového programování a ukázka Pythonu
Zobrazit na celou obrazovku
Vypnout zvuky
Sdílet Zobrazit shrnutí tématu
Funkce v Pythonu

Funkce je pojmenovaný blok příkazů. Funkcím můžeme předávat argumenty. Funkce vrací návratovou hodnotu.

Definice funkce

Python nabízí celou řadu vestavěných funkcí, tedy takových, které jsou již připravené tvůrci jazyka. Příkladem je třeba funkce len, která počítá délku řetězce.

Vlastní funkci definujeme pomocí klíčového slova def:

def say_hello(name):

    print("Hello", name)

Tímto jsme definovali funkci say_hello, která má parametr name. Funkce může mít i více parametrů.

Volání funkce

Tím, že definujeme funkci, se ještě nevykoná. Aby se funkce vykonala, musíme ji zavolat. To uděláme tak, že napíšeme jméno funkce a do závorek předáme konkrétní argument:

say_hello("Alice")  # vypíše Hello Alice

say_hello("Bob")    # vypíše Hello Bob

Některé funkce jsou bez parametrů. U jejich volání musíme závorky stále uvést, např. say_goodbye().

Návratová hodnota

Funkce může vracet návratovou hodnotu pomocí klíčového slova return. Následující funkce vypočítá a vrátí faktoriál.

def factorial(n):

    f = 1

    for i in range(1, n+1):

        f = f*i

    return f

Takováto funkce sama o sobě nic neprovede, pouze vrátí hodnotu, se kterou můžeme dále pracovat.

factorial(5)         # vypočítá hodnotu faktoriálu z 5, ale pak se tato

                     # hodnota nijak nepoužije

print(factorial(4))  # tentokrát výsledek výpočtu vypíšeme

x = factorial(6)     # výsledek výpočtu se uloží do proměnné

print(x)             # a pak třeba můžeme hodnotu proměnné vypsat

Příkaz return ukončuje provádění funkce. Při volání následující funkce se tedy vypíše pouze foo:

def test():

    print("foo")

    return 0

    print("bar")

Rozdíl return a print

Častý zdroj problémů u začátečníků je správné rozlišování mezi použitím print a return ve funkcích.

Použití print způsobí okamžitý výpis hodnoty, nelze však s touto hodnotou nijak dál pracovat.

Použití return ukončí funkci a vrátí hodnotu. Ta se automaticky nevypíše, ale můžeme ji přiřadit do proměnné a dále s ní pracovat.

NAPIŠTE NÁM

Děkujeme za vaši zprávu, byla úspěšně odeslána.

Napište nám

Nevíte si rady?

Před položením dotazu si prosím projděte návody:

Prosíme, nezasílejte dotazy na prozrazení řešení úloh či vysvětlení postupu. Pokud hlásíte chybu, upřesněte prosím, v čem přesně spočívá a připojte snímek obrazovky.

Čeho se zpráva týká?

Vzkaz Hlášení chyby Obsah Ovládání Přihlášení Licence