12.07.2015 Views

Python

Python

Python

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

POGLAVLJE 3Izrazi, operatori i operacije3.1 Varijable<strong>Python</strong> pristupa podacima s pomo¢u referenci. Jedna takva referenca je varijabla, tj. imenovani prostoru memoriji koji £uva adresu nekog objekta ili literala. Referenca takožer postoji i na atribut (vrijednost)nekog objekta. Varijabla ili druga vrsta reference nemaju svoj vlastiti tip, za razliku od podatka nakojeg pokazuju, kojeg referenciraju tj. £iju adresu pohranjuju. Budu¢i da je adresa jedinstvena usmislu broja okteta, svaka referenca moºe povezati objekte razli£itih tipova, ²to zna£i da je dinami£na,da se moºe mijenjati prilikom izvr²enja programa. U jednom trenutku varijabla moºe pokazivati nacjelobrojni podatak, a ve¢ u sljede¢em na realni, kompleksni ili neki sloºeni tip.U <strong>Python</strong>u nema deklaracija. Postojanje varijable ovisi o naredbi koja povezuje (eng. binding)varijablu i podatak; drugim rije£ima, naredbi koja imenuje neki objekt, bilo kojeg tipa. Mogu¢e jeodvezati (eng. unbinding) varijablu resetiranjem njenog imena, tako da vi²e ne sadrºi referencu na tajobjekt. Naredba del odvezuje reference.Povezivanje reference koja je ve¢ povezana poznato je kao re-povezivanje (eng. rebinding). Repovezivanjeili odvezivanje reference nema nikakv u£inak na objekt s koji je referenca bila povezana,osim ²to objekt nestaje ako vi²e ne postoji nikakva referenca koja se na njega odnosi. Odvezani objektisami ¢e nestati iz memorije. Za to se brine poseban <strong>Python</strong> modul, ugražen u interpreter. Takvoautomatsko £i²¢enje objekata bez referenci zove se sakupljanje sme¢a (engl. garbage collecting).Varijabla se moºe imenovati bilo kojim identikatorom, osim onih 30 koji su rezervirani kao <strong>Python</strong>klju£ne rije£i. Pritom identikator ima i neka svoja pravila: ne smije imati zabranjene simbole u sebi,ne smije po£injati brojem i sl. Varijabla moºe biti globalna ili lokalna. Globalna varijabla je dohvatljivas vi²e razina, a lokalna uglavnom u funkciji u kojoj se koristi.3.2 Naredbe pridruºivanjaNaredbe pridruºivanja mogu biti obi£ne ili pro²irene. Obi£no pridruºivanje varijabli (npr. name=value)je na£in stvaranja nove varijable ili re-povezivanja postoje¢e varijable na novu vrijednost (tj. promjenavrijednosti). Obi£na pridruºba na atribut objekta (npr. obj.attr=value) je zahtjev objektu obj dastvori ili re-poveºe atribut attr. Obi£na pridruºba za £lan u nekom nizu ili preslikavanju (listi ilirje£niku) (npr. obj[key] = value) je zahtjev spremniku obj da stvori ili re-poveºe £lan s indeksomkey. Takva pridruºba uklju£uje indeksiranje niza.Pro²irena pridruºba (npr. name+=value) ne stvara nove reference, nego samo re-povezuje varijablu.Postoje¢i objekt re-povezuje sebe ili jedan od svojih atributa ili £lanovas novom vrijedno²¢u.Taj se zahtjev uspje²no izvr²ava ili se podiºe iznimka, kojom se javlja neka vrsta pogre²ke. Iznimka25

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!