Funkce jsou nezbytnou součástí programování v Pythonu a umožňují vám zapouzdřit kód do opakovaně použitelných bloků. Pochopení toho, jak správně volat funkci, je základem pro psaní efektivního kódu Pythonu. V tomto článku prozkoumáme různé způsoby volání funkcí v Pythonu, včetně předávání argumentů, vracení hodnot a zpracování výjimek.
1. Základy funkcí
Než se ponoříme do volání funkcí, zopakujme si základy definice funkce v Pythonu:
def greet(): print('Hello, world!')
To definuje jednoduchou funkci nazvanou pozdrav, která vypíše 'Ahoj, světe!'. Chcete-li tuto funkci zavolat, jednoduše použijte její název následovaný závorkami:
greet()
Výstup:
Hello, world!
2. Funkční argumenty
Funkce v Pythonu mohou také přijímat argumenty. Zde je příklad funkce, která vezme jméno jako argument a pozdraví osobu jménem:
def greet_with_name(name): print(f'Hello, {name}!')
Chcete-li tuto funkci zavolat s argumentem, předejte argument do závorek:
greet_with_name('Alice')
Výstup:
urfi javed
Hello, Alice!
3. Vrácení hodnot
Funkce mohou také vracet hodnoty pomocí příkazu return. Vytvořme například funkci, která vypočítá druhou mocninu čísla a vrátí výsledek:
def square(x): return x ** 2
Chcete-li použít vrácenou hodnotu, můžete ji přiřadit proměnné:
result = square(5) print(result)
Výstup:
25
4. Výchozí argumenty
Můžete také definovat funkce s výchozími argumenty. Tyto argumenty mají výchozí hodnotu, která se použije, pokud je funkce volána bez zadání hodnoty pro tento argument. Například:
def greet_with_default(name='world'): print(f'Hello, {name}!') greet_with_default()
Výstup:
Hello, world!
greet_with_default('Bob')
Výstup:
Hello, Bob!
5. Variabilní počet argumentů
Funkce Pythonu mohou přijímat proměnný počet argumentů pomocí syntaxe *args. To vám umožňuje předat funkci různý počet argumentů. Například:
def sum_all(*args): total = 0 for num in args: total += num return total print(sum_all(1, 2, 3, 4, 5))
Výstup:
15
6. Argumenty klíčových slov
Funkce mohou také přijímat argumenty klíčových slov pomocí syntaxe **kwargs. To vám umožňuje předat funkci proměnný počet argumentů klíčových slov. Například:
def print_info(**kwargs): for key, value in kwargs.items(): print(f'{key}: {value}') print_info(name='Alice', age=30, city='New York')
Výstup:
name: Alice age: 30 city: New York
7. Volání funkcí z funkcí
Můžete volat jednu funkci z jiné funkce. To vám umožní znovu použít kód a vytvořit modulárnější programy. Například:
def greet_all(*names): for name in names: greet_with_default(name) greet_all('Alice', 'Bob', 'Charlie')
Výstup:
Hello, Alice! Hello, Bob! Hello, Charlie!
8. Manipulace s výjimkami
Při volání funkcí je důležité zpracovat výjimky, které mohou nastat. Pokud se například pokusíte převést řetězec na celé číslo, můžete narazit na chybu ValueError, pokud řetězec není platné celé číslo:
def convert_to_int(s): try: return int(s) except ValueError: print('Invalid input!') print(convert_to_int('123'))
Výstup:
123
print(convert_to_int('abc'))
Výstup:
Invalid input!
Závěr
V tomto článku jsme probrali základy volání funkcí v Pythonu, včetně předávání argumentů, vracení hodnot a zpracování výjimek. Funkce jsou mocným nástrojem v Pythonu, který vám umožní psát čitelnější, modulárnější a udržitelnější kód. Osvojením si umění volání funkcí můžete posunout své programovací dovednosti v Pythonu na další úroveň.