Funkcije - višestruko upotrebljiv kôd
Često je potrebno više puta uraditi istu ili sličnu stvar. Da bi se izbeglo ponavljanje i bespotrebno pisanje istog ili jako sličnog kôda koriste se funkcije.
Funkcije se stvaraju pomoću ključne reči def
posle koje se navede željeno ime funkcije. Zatim slede dvotačka i na kraju
deo kôda koji se želi ugraditi u funkciju.
def mojaFunkcija():
print("Pozdrav iz moje funkcije!")
Sav kôd koji je uvučen na prvom nivou u odnosu na liniju u kojoj je definisana funkcija smatraće se delom funkcije.
Izvršavanje funkcija
Funkcije se neće izvršavati sve dok ne bude pozvana. Da bi se navedena funkcija izvršila potrebno je pozvati navođenjem imena.
mojaFunkcija()
Promenljivo ponašanje funkcija - argumenti funkcija
Kada je potrebno da funkcija bude prilagodljiva moguće je koristiti argumente.
def reciKoSam(ime):
print("Ti si:", ime)
reciKoSam("Dušan") # Ti si: Dušan
reciKoSam("Dule") # Ti si: Dule
Funkcije sa više argumenata
Prema potrebi funkcije mogu imati više od jednog argumenta.
def reciKoSam(ime, prezime):
print("Ti si:", ime, prezime)
reciKoSam("Dušan", "Rešin") # Ti si: Dušan Rešin
Ispravan broj argumenata
Broj argumenata koji se prosleđuje pri pozivu funkcije mora biti isti kao i broj argumenata u definiciji funkcije. U suprotnom, doći će do greške.
def reciKoSam(ime, prezime):
print("Ti si:", ime, prezime)
reciKoSam("Dušan") # Greška! Funkcija po definiciji zahteva
dva argumenta a prosleđuje se samo jedan.
def reciKoSam(ime):
print("Ti si:", ime)
reciKoSam("Dušan", "Rešin") # Greška! Funkcija po definiciji zahteva
samo jedan argument a prosleđuju se dva.
Podrazumevani argumenti funkcije - parametri
Moguće je zadati podrazumevane vrednosti argumenata funkcije. U tom slučaju pri pozivu funkcije neće doći do greške ako se ne navedu argumenti za koje postoji podrazumevana vrednost. Zadavanje podrazumevanih vrednosti kao parametara vrši se prilikom definicije funkcije.
def reciKoSam(ime = "Petar", prezime = "Petrović"):
print("Ti si:", ime, prezime)
reciKoSam() # Ti si: Petar Petrović