Python: Funkcije, uvod

Kao i vecina programskih jezika, Python nam omogucava da pisemo vlastite funkcije. To su zapravo odvojeni delovi programa, napisani sa ciljem da izvrsavaju neki zadatak. Kada ih jednom definisemo, mozemo ih pozivati koliko puta zelimo. U tom smislu podsecaju na subrutine iz basica.

Drugi razlog koriscenja funkcija je bolja organizacija. Ovaj tzv. modularni pristup programiranju nam omogucava da komplexne zadatke razbijemo na vise delova. Ovi delovi / moduli kasnije mogu da se menjaju i unapredjuju, pozivaju jedan iz drugog itd. U zavisnosti od stila, postoje programeri koji koriste funkcije u >90% svog koda, upravo iz ovog drugog razloga.

Struktura funkcije je vrlo jednostavna. Ona ima: ime, argumente, neku akciju i rezultat. Ime sluzi da je pozovemo. Argumenti su neki podaci koje joj dajemo. Akcija je ono sto uradi. I rezultat su povratni podaci koje nam funkcija vraca.

U Pythonu ova struktura izgleda ovako:

def ime(a,b,c..):
    neka akcija
    sa a,b, i c
    return x

U ovom primeru ime je ime funkcije; a, b i c su argumenti; u sredini je neka radnja i x je rezultat koji nam funkcija vraca. No da se manemo teorije, jer se programiranje najbolje uci kroz primere i praksu.

Napisimo jednu jednostavnu funkciju:

1. Otvorite IDLE. Idite na File > New Window (ili Ctrl+N). Otvorice vam se novi editor.
2. U njemu ukucajte sledeci code:

def sab(a,b):
    x = a+b
    return x

3. U editoru gde ste napisali code funkcije idite na File > Save as i snimite ga recimo na Desktop pod nazivom sab.py. U koliko probate da pokrenete fajl pre nego ga snimite dobicete upozorenje da ovo nije moguce. Isto vazi i ako kasnije modifikujete fajl.

4. U editoru gde ste napisali code funkcije i snimili ga, idite na Run > Run Module (ili F5). Ovim cete izvrsiti funkciju i bicete automatski vraceni u osnovni IDLE shell.

5. U IDLE Shellu kucajte recimo:

>>> sab(10,20)
30

Cestitam, upravo ste napisali svoju prvu funkciju u Pythonu. Ova procedura pisanja funkcija u novom prozoru, zatim snimanje i izvrsavanje je inace uobicajena kod pisanja Python programa. U koliko se ranije niste sretali sa ovim, ponovite proceduru nekoliko puta da bi vam postala bliska.

U koliko kasnije budete zeleli da menjate sab.py, desni klik na njega ce vam dati opciju Edit with IDLE. Ako napravite izmene, moracete najpre da snimite ovakav fajl da bi ste mogli da ga izvrsite. Slobodno experimentisite u Pythonu, to je najbolji nacin da naucite ovaj programski jezik.

Dodacemo jos da su varijable unutar funkcije lokalne za tu funkciju. Drugim recima, u svom glavnom programu mozete koristiti ista slova koja ste koristili unutar neke funkcije. Takodje, i u drugim funkcijama mozete raditi isto.

Primera radi otvorite sab.py (desni klik > Edit with IDLE) i izvrsite ga (Run > Run Module). Zatim u IDLE Shellu kucajte nesto tipa:

>>> a = 10
>>> x = 15
>>> b = sab(10,x)+a
>>> print(b)
35

Iz ovoga se vidi da se varijable a,b i x u glavnom programu nezavisno koriste od varijabli unutar funkcije sab.

Toliko za uvod. U narednom textu cemo kroz primere obraditi neke osobenosti funkcija.

Posted on 2014/01/18, in Programski jezici, Python. Bookmark the permalink. 2 Comments.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: