Funkcje w Python

Funkcje w Pythonie pozwalają grupować kod w bloki, które można wielokrotnie wywoływać. Są podstawą modularnego i czytelnego programowania.


1. Definicja funkcji

  • Funkcję definiuje się za pomocą słowa kluczowego def.
  • Składnia:

Przykład:


2. Argumenty funkcji

2.1. Argumenty pozycyjne

  • Kolejność wywołania ma znaczenie:

2.2. Argumenty nazwane (keyword arguments)

  • Można przekazywać wartości jawnie po nazwie:

2.3. Argumenty domyślne

  • Ustawiają wartość domyślną, jeśli nie podano argumentu:

2.4. Argumenty zmiennej długości

  • *args – nieuporządkowane argumenty pozycyjne (tuple)
  • **kwargs – argumenty nazwane (dict)

3. Zwracanie wartości

  • Funkcja może zwracać wartość za pomocą return.
  • Jeśli nie zwróci wartości, zwraca None.

4. Funkcje anonimowe (lambda)

  • Funkcje jednowierszowe bez nazwy:

5. Funkcje wbudowane jako argumenty

  • Python pozwala przekazywać funkcje jako argumenty innych funkcji.

6. Rekurencja

  • Funkcja może wywoływać samą siebie:
  • Należy pamiętać o warunku końcowym, aby uniknąć nieskończonej rekursji.

7. Dekoratory

  • Funkcje, które modyfikują działanie innych funkcji:
  • Wynik:
Przed wywołaniem funkcji
Cześć!
Po wywołaniu funkcji

8. Funkcje zagnieżdżone

  • Funkcje mogą być definiowane w innych funkcjach:

9. Dobre praktyki

  • Funkcje powinny być krótkie i realizować jedno zadanie.
  • Stosuj czytelne nazwy funkcji i argumentów.
  • Dodawaj docstring z opisem funkcji.
  • Używaj *args i **kwargs tylko wtedy, gdy jest to potrzebne.
  • Unikaj nadmiernej rekursji dla dużych danych (Python ma limit rekursji).

10. Przykłady praktyczne

10.1. Funkcja do sprawdzania parzystości

10.2. Funkcja sumująca listę

10.3. Funkcja filtrująca elementy