Jak wywołać funkcję w Pythonie

Aby wywołać funkcję w Pythonie, wystarczy użyć jej nazwy i podać odpowiednie argumenty w nawiasach okrągłych, np. wynik = nazwa_funkcji(argumenty). Funkcje stanowią fundamentalny element programowania, pozwalający na organizowanie kodu w czytelny, wielokrotnie używalny sposób.

Składnia funkcji w Pythonie

Definiowanie funkcji w Pythonie rozpoczynamy słowem kluczowym def, po którym następuje nazwa funkcji, lista argumentów w nawiasach okrągłych i dwukropek. Treść funkcji umieszczamy poniżej, dbając o odpowiednie wcięcie:

def nazwa_funkcji(argument1, argument2):
    # ciało funkcji
    return wynik
  • def – rozpoczyna definicję funkcji;
  • nazwa_funkcji – unikatowy, opisowy identyfikator;
  • argumenty – opcjonalne zmienne, na których funkcja operuje;
  • return wynik – (opcjonalnie) zwraca wynik funkcji.

Wywoływanie funkcji

Aby uruchomić funkcję, należy wywołać ją podając jej nazwę oraz, jeśli wymaga – odpowiednie argumenty w nawiasach okrągłych:

wynik = nazwa_funkcji(argument1, argument2)
print(wynik)

Przykład z funkcją liczącą średnią liczb parzystych w liście:

def srednia_parzystych(lista):
    suma_parzystych = 0
    ilosc_parzystych = 0
    for liczba in lista:
        if liczba % 2 == 0:
            suma_parzystych += liczba
            ilosc_parzystych += 1
    if ilosc_parzystych == 0:
        return 0
    return suma_parzystych / ilosc_parzystych

moja_lista = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
wynik1 = srednia_parzystych(moja_lista)
print("Średnia wartość parzystych liczb w liście:", wynik1)

Wynik działania zostanie przypisany do zmiennej wynik1 i wyświetlony.

Argumenty funkcji

Funkcje mogą przyjmować różne rodzaje argumentów:

  • Argumenty pozycyjne – przekazywane wg kolejności;
  • Argumenty nazwane – podajemy nazwę argumentu, np. nazwa_funkcji(x=5);
  • Argumenty domyślne – można nadać argumentom wartości domyślne.
def powitanie(imie="Gość"):
    print(f"Cześć, {imie}!")

powitanie() # Cześć, Gość!
powitanie("Ola") # Cześć, Ola!

Funkcje zwracające wartości vs. funkcje nie zwracające wartości (return)

  • Funkcje zwracające wartość – używają return, np. return wynik;
  • Funkcje wykonujące zadanie bez zwracania – brak return, działa jak polecenie.
def przywitanie():
    print("Witaj!")

def dodaj(x, y):
    return x + y

przywitanie() # Witaj!
print(dodaj(4, 6)) # 10

Przekazywanie i zwracanie danych

  • Każda funkcja może zwracać dowolną wartość: typ liczbowy, tekst, listę itd.,
  • funkcje mogą modyfikować zmienne tylko lokalnie (nie wpływają na zmienne globalne, chyba że użyjemy słowa kluczowego global).

Funkcje w funkcjach i wywołania zagnieżdżone

Możesz wywoływać funkcje w innych funkcjach:

def print_a():
    print("a")

def print_a_and_b():
    print_a()
    print("b")

print_a_and_b()
# Wyjście:
# a
# b

Wywołanie funkcji print_a_and_b() powoduje uruchomienie obu instrukcji.

Praktyczne porady

  • Nadaj funkcji opisową nazwę i jasno określ jej argumenty;
  • dokumentuj działanie funkcji za pomocą docstringa:
def suma(a, b):
    """
    Zwraca sumę dwóch liczb.
    """
    return a + b
  • funkcje ułatwiają testowanie oraz reużywalność kodu.

Najczęstsze błędy

  • Pomijanie nawiasów przy wywołaniu (print vs. print()),
  • mylenie parametrów z argumentami – parametry są w definicji funkcji, argumenty podczas wywołania.

Podsumowanie – w Pythonie funkcje definiuje się przez słowo kluczowe def, a wywołuje przez podanie nazwy funkcji z odpowiednimi argumentami w nawiasach okrągłych. Funkcje mogą posiadać różne rodzaje argumentów, zwracać różne wartości i być wywoływane wielokrotnie, znacznie upraszczając oraz organizując kod.

Programista i twórca serwisu Creative Coding, absolwent Politechniki Warszawskiej (WEiTI). Od 10+ lat łączy front‑end, grafikę generatywną i narzędzia dla twórców; opublikował 120+ projektów i artykułów, prowadził warsztaty dla 2 000+ uczestników. Pracuje z JavaScriptem, Three.js, P5.js i GLSL, bada wydajność i dokumentuje procesy, tworząc praktyczne przewodniki dla osób łączących kod z obrazem, dźwiękiem i interakcją.
Zostaw komentarz

Komentarze

Brak komentarzy. Dlaczego nie rozpoczniesz dyskusji?

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Wymagane pola są oznaczone *