
Python — funkce
Jak vytvářet funkce v Pythonu.
Co jsou Python funkce?
Funkce v Pythonu jsou zpravidla malé části kódu, které mají své jméno. Používají se k lepší organizaci kódu a k usnadnění programování. Obsahují kód, který se často využívá opakovaně.
Každá funkce má svoje unikátní jméno. Pokud chcete funkci použít, stačí pouze zavolat její jméno. Vytváření a používání funkcí si vyzkoušíte v následujících příkladech.
Funkce - základy
Abyste mohli funkci použít, musíte ji nejprve definovat.
K tomu slouží klíčové slovo def, následované jménem funkce a závorkami, do kterých můžete přidat parametry.
Parametry funkce jsou proměnné, které funkci předáváte. Parametry jsou volitelné. Díky tomu můžete mít funkci bez parametrů.
Funkce také mohou vracet výsledek pomocí klíčového slova return.
To znamená, že po provedení kódu vrátí funkce výstupní hodnotu, kterou můžete dál používat.
Vyzkoušejte si vytváření funkcí
Příklad 1
Jednoduchý příklad, kde si vytvoříte vlastní funkci v Pythonu.
def pozdrav():
print("LovelyData je lovely!")
# Zavolání funkce
pozdrav()
LovelyData je lovely!
V tomto příkladu jste vytvořili funkci s názvem pozdrav, která vypisuje zprávu Lovelydata je lovely!.
Po definici funkce můžeme tuto funkci zavolat jednoduše napsáním jejího názvu.
Nezapomeňte na závorky!
Příklad 2
Funkce mohou mít parametry, což jsou hodnoty, které mohou být předány do funkce pro další zpracování.
def pozdrav(text_pozdravu):
print(text_pozdravu)
# Zavolání funkce
pozdrav("Funkce jsou lovely!")
Funkce jsou lovely!
Funkce vracející hodnotu
Funkce může kromě vstupních parametrů také vracet hodnoty. Ty pak mohou být předány pro další zpracování.
Příklad 3
Vyzkoušejte si napsat funkci pro výpočet součtu dvou čísel.
def soucet(a, b):
return a + b
# Výsledek funkce můžeme uložit do proměnné
vysledek = soucet(5, 3)
print(vysledek)
8
V tomto příkladu je funkce soucet definována s dvěma parametry a a b.
Uvnitř funkce jsou tyto dva parametry sečteny pomocí operátoru + a následně je vrácen výsledek pomocí klíčového slova return.
Při použití funkce je nutné předat hodnoty (čísla) jako argumenty a následně je výsledek uložen do proměnné vysledek a vypsán na výstup.
Složitější Python funkce
Vyzkoušejte si pár složitějších příkladů na vytváření vlastních funkcí v Pythonu.
Příklad 4
Tento příklad převádí teplotu mezi stupni Celsia a stupni Fahrenheita.
def prevod_teploty(teplota, jednotka):
# Převod z stupňů Celsia na stupně Fahrenheita
if jednotka == 'C':
return (teplota * 9/5) + 32
# Převod ze stupňů Fahrenheita na stupně Celsia
elif jednotka == 'F':
return (teplota - 32) * 5/9
else:
return f"{jednotka} není platnou jednotkou teploty."
# Příklady použití funkce
# Všimněte si zaokrouhlení na 1 desetinné místo
teplota_c = 25
teplota_f = prevod_teploty(teplota_c, 'C')
print(f"{teplota_c:.1f}°C = {teplota_f:.1f}°F")
teplota_f = 451
teplota_c = prevod_teploty(teplota_f, 'F')
print(f"{teplota_f:.1f}°F = {teplota_c:.1f}°C")
25.0°C = 77.0°F
451.0°F = 232.8°C
Funkce prevod_teploty přijímá dvě hodnoty: teplotu a jednotku teploty.
Na základě zadané jednotky provede převod teploty mezi stupni Celsia a stupni Fahrenheita.
Pokud je jednotka C, provede převod na stupně Fahrenheita, a pokud je jednotka F, provede převod na stupně Celsia.
Pokud je zadána nesprávná jednotka, vrátí chybovou hlášku.
Příklad 5
Funkce pro výpočet průměru zadaných čísel.
def vypocti_prumer(seznam_cisel):
pocet = len(seznam_cisel)
suma = sum(seznam_cisel)
prumer = suma / pocet
return prumer
cisla = [1, 2, 3, 4, 5]
prumer_cisel = vypocti_prumer(cisla)
print("Průměr je:", prumer_cisel)
Průměr je: 3.0
Funkce vypocti_prumer je definována s jedním parametrem seznam, který přijímá seznam (list) čísel.
Funkce zjistí počet čísel v seznamu pomocí standardní funkce len(seznam), sečte všechna čísla v seznamu pomocí standardní funkce sum(seznam) a vydělí je počtem čísel.
Nakonec vrátí výsledek pomocí klíčového slova return.
Příklad 6
Tato funkce převádí malá písmena na velká.
def velka_pismena(text):
prevedeny_text = text.upper()
return prevedeny_text
zadany_text = "ahoj zářivý světe"
vysledek = velka_pismena(zadany_text)
print("Převedený text:", vysledek)
Převedený text: AHOJ ZÁŘIVÝ SVĚTE
Funkce velka_pismena přijímá jako vstupní parametr řetězec text.
V těle funkce se používá metoda řetězce upper(), která převede všechna písmena na velká písmena.
Výsledkem je převedený text, který je vrácen pomocí klíčového slova return.
Dokumentace přímo ve funkci
Pokud chcete zdokumentovat, co funkce dělá, můžete použít tzv. docstring.
Jak už název napovídá, jedná se o popis funkce (dokumentaci), která se stane nedílnou součástí funkce.
Popis funkce si zobrazíte např. pomocí funkce help.
Příklad 7
def velka_pismena(text):
"""Funkce převede zadaný text na velká písmena."""
prevedeny_text = text.upper()
return prevedeny_text
help(velka_pismena)
Help on function velka_pismena in module __main__:
velka_pismena(text)
Funkce převede zadaný text na velká písmena.
Závěrem
Předchozí příklady ukazují, jak můžete vytvářet vlastní funkce v Pythonu k provádění různých úkolů a manipulaci s daty. Jejich vytvoření umožňuje organizaci a opakované využití kódu, což usnadňuje tvorbu programů.
Pokud se chcete naučit jeden z nejpopulárnějších programovacích jazyků současnosti, podívejte se na nabídku našich prověřených kurzů Pythonu.
Mohlo by vás zajímat
Blog

Brzdí vás Excel? Vlastní datové aplikace rychle a bez programátorů.

Jak vytváříme jednoúčelové aplikace s pomocí AI

Aritmetický průměr vs. medián
Data Apps

Lineární kalendář

Převod řeči na text

Dokumenty do Markdownu
Kurzy

Vizualizace dat v Canvě

Datová gramotnost pro každého

SQL pro každý den

Data Analytics Pass

IT je taky pro holky!


