Funkcjonowanie wśród funkcji

Witam po dłuższej przerwie spowodowanej urlopem. Już jakiś czas temu napisałem całego posta, ale Blogger zrobił mi niemiłą niespodziankę i nie zapisał moich słów. Szkoda. Post  wymagał jedynie kosmetycznych zabiegów.

Jak ostatnio wam obiecałem postaram się wytłumaczyć, najlepiej jak umiem, poszczególne linijki kodu. Python nie jest językiem skomplikowanym i wystarczy troszkę przy nim przysiąść i popisać różne małe programiki, by opanować jego podstawy. Zaczynajmy więc, może nie od początku, ale za to z przytupem.


Funkcje, bo od nich zaczniemy przygodę z Pythonem, to rodzaj programu, który zostanie wykonany po odpowiednim wywołaniu. Dużą zaletą funkcji jest możliwość przywoływania jej w kodzie wielokrotnie. Raz zapisana funkcja może być nieskończenie wiele razy wywoływana.

Definiowanie i wywoływanie funkcji użytkownika
Tworzenie własnych funkcji wiąże się z przestrzeganiem kilku prostych zasad. Po pierwsze definiując nową funkcję zaczynamy od słowa kluczowego def. Kompilator wie wówczas, że oto użytkownik postanowił napisać własną, autorską funkcję. Po słowie def następuje nazwa funkcji. Tutaj możemy napisać dosłownie wszystko co nam przyjcie do głowy, pod warunkiem że składa się z liter (wielkich i małych), cyfr i znaku podkreślenia ( _ ). Oczywiście są pewne reguły:

  • nazwa nie może zaczynać się od cyfry,
  • funkcja "AAa" i "aaA" to dwie różne funkcje. Python rozróżnia wielkość liter w nazwach (tzw. case sensitive),
  • nazwa nie może zawierać spacji,
  • nazwa nie może być jednym ze słów zastrzeżonych przez Pythona (np. def, print, if itp.),
  • nazwa może rozpoczynać się znakiem podkreślenia. Należy tego używać bardzo ostrożnie, gdyż w Pythonie takie nazwy mają specjalne znaczenie. 
Przyjęło się również, dla zwiększenia czytelności kodu, tworzyć nazwy używając jedynie małych liter, podkreślników i cyfr np. "moja_funkcja", "taka_sobie_funkcja2".
W nawiasie okrągłym podaje się argumenty. Nie jest to obowiązkowe. Można z powodzeniem utworzyć funkcję nieposiadającą ani jednego argumentu. Przy nazywaniu argumentów również stosujemy wyżej wymienione zasady. Linijkę wieńczy dwukropek. Kolejną linię rozpoczynamy od znaku tabulacji. Jest to sygnał dla kompilatora, że ta linijka należy do nowo definiowanej funkcji. W przykładzie graficznym takich linijek jest dwie. Pierwsza przypisuje zmiennej lokalnej wynik dodawania dwóch argumentów, druga zwraca wartość zmiennej lokalnej.

Funkcja utworzona. Zostało tylko jej wywołanie. Można to zrobić poprzez wypisanie nazwy funkcji wraz z podaniem argumentów. I tutaj mała uwaga. W naszym przykładzie podanie argumentów jest obowiązkowe i musi ich być dokładnie dwa. W przeciwnym razie program wyświetli komunikat o błędzie. Oczywiście jest możliwość obejścia tego problemu, ale o tym napiszę innym razem.  

Nie są to wszystkie aspekty tworzenia funkcji. Jest wiele spraw, które należy uwzględnić przy projektowaniu programów, np obsługę błędów. Bo co by się stało, gdyby użytkownik wpisał niepoprawny format danych lub podał niewłaściwą ilość argumentów? To już zagadnienie na inną okazję. Mam nadzieję, że choć trochę przybliżyłem wam pojęcie funkcji. Polecam teraz jeszcze raz przeczytać wcześniejsze posty i spróbować samemu rozszyfrować, o co w danej funkcji chodzi.

Zachęcam też do polubienia Fanpage'a mojego bloga na Facebooku.

Brak komentarzy:

Prześlij komentarz