31
{ PROGRAMIRANJE Amar Kalabić

Uvod u programiranje i programski jezik Python

Embed Size (px)

DESCRIPTION

Uvod u programiranje i programski jezik Python

Citation preview

Page 1: Uvod u programiranje i programski jezik Python

{PROGRAMIRANJE

Amar Kalabić

Page 2: Uvod u programiranje i programski jezik Python

Svaki programer piše programski kod u nekom programskom jeziku. Različiti programski jezici podržavaju različite stilove programiranja (programska paradigma). Različiti programski jezici zahtjevaju različite nivoe znanja, umijeća i detalja koje programer treba posjedovati.

Page 3: Uvod u programiranje i programski jezik Python

Jedini programski jezik koji računar može direktno izvršavati je mašinski jezik (mašinski

kod ili binarni kod).

0101010101

Page 4: Uvod u programiranje i programski jezik Python

Do danas napravljeno je hiljade programskih jezika, dok je samo nekoliko od njih postalo poznato i dostupno širokom krugu korisnika. Neki su više usmjereni za rješavanje određenog zadatka, dok su sveobuhvatniji programski jezici (kao C programski jezik) mnogo poznatiji i češće u primjeni.

Page 5: Uvod u programiranje i programski jezik Python

Kompajliranje je složen proces a vrši se iz više razloga. Jedan i najvažniji, jeste „prevođenje“ koda određenog programskog jezika u binarni kod, koji je razumljiv računaru (računari „razumiju“ samo binarni kod). Također kao razlog možemo navesti i krajnji produkt – novi fajl koji je moguće pokrenuti, laički rečeno, sa „dva klika“ (executable file).

Page 6: Uvod u programiranje i programski jezik Python

Pri izradi svakog programa potrebno je proći kroz 4 osnovne faze (i jedne dodatne ili dopunske) ili koraka:

Analiza problema Kreiranje algoritma (crtanje dijagrama toka) Pisanje programskog koda Unos programskog koda u računar i pokretanje programa

Rješavanje eventualnih bugova i updateanje istog u budućnosti

Page 7: Uvod u programiranje i programski jezik Python

U matematici i računarskoj nauci algoritam je određeni skup definisanih naredbi za obavljanje nekog zadatka. Algoritmi se koriste u računarskim programima kao način rješavanja nekog zadatka. Algoritam također može da znači grafički prikaz toka obrade ili skup instrukcija računarskog programa (tad se preciznije naziva dijagram toka). On predstavlja vodilju za programera koji pomoću algoritama predstavlja viziju programa koji želi napisati u programskom jeziku.

Page 8: Uvod u programiranje i programski jezik Python

Općenito

Page 9: Uvod u programiranje i programski jezik Python

Python je prevođeni programski jezik kojeg je stvorio Guido van Rossum 1990 godine. Objekat orijentisano, strukturno i aspekt orijentisano programiranje su stilovi dozvoljeni korištenjem Pythona. Ne treba napominjati da ova fleksiblinost čini Python programski jezik sve popularnijim. Python se najviše koristi na Linux-u, no postoje i verzije za druge operativne sisteme.

Page 10: Uvod u programiranje i programski jezik Python

Objektno orijentirano programiranje ili kraće OOP je jedan od mogućih pristupa programiranju računara. Za razliku od ostalih pristupa, u kojima je težište na akcijama koje se vrše na podatkovnim strukturama, ovdje je težište na projektiranju aplikacije kao skupa objekata koji izmjenjuju poruke.

Page 11: Uvod u programiranje i programski jezik Python

Python je vrlo moćan programski jezik. Koriste ga mnoge firme i pojedinci, prvenstveno radi toga što je multifunkcionalan te može izvesti i najzahtjevnije zadatke. Python omogućava kako pravljenje jednostavnijih programa, tako i programa sa GUI-em (Graphic User Interface), pravljenje igrica, integraciju u web stranice i td. Nažalost, Python je vrlo poznat kao „hackerski programski jezik“, iz razloga što je vrlo lako sa istim napraviti hackerske alate, kao što su SQLinjector, DDoS alatke i drugo.

Page 12: Uvod u programiranje i programski jezik Python

Kodirati u Pythonu možete svugdje, izravno u Python terminalu (shell) ili u nekom običnom tekst editoru

Page 13: Uvod u programiranje i programski jezik Python

Za jednostavnije programe, koji nemaju takvu strukturu da bi mogli prouzrokovati veće greške pri kodiranju kodira se direktno u terminalu, dok za zahtjevnije se koriste neki IDE (Integrated development environment ili „radno okruženje programera“) programi. IDE programi omogućavaju olakšice pri kodiranju, za Python samo neki od njih su:

Eclipse + PyDev Komodo NetBeans PyScripter i dr.

Page 14: Uvod u programiranje i programski jezik Python

Mnogi Python označavaju kao dobar programski jezik za početnike, zbog toga što je vrlo jednostavan za korištenje. Ne koristi pomalo čudne i zbunjujuće (za početnika) metode „uvlačenja“ kao Java, nego to radi sasvim jednostavno. Python ima i svojih mana, on kao i Java, ne priznaje uvlačenje tipkom „TAB“, pa zbog toga, mnogi početnici imaju errore koje ne znaju riješiti, a rješenje je jednostavno. Komentari ili podsjetnici se mogu ostaviti u popularnim #hashkomentarima, koristeći „hash“(#) prije pisanja.

Page 15: Uvod u programiranje i programski jezik Python

Osnove kodiranja u Pythonu

Page 16: Uvod u programiranje i programski jezik Python

Python podržava sve matematičke operacije, a mi ćemo proći kroz one najosnovnije. Prije korištenja matematike, potrebno je importati istu u naš program koristeći „import“. Pa na početak programa kucamo „import math“. Možemo se direktno koristiti brojevima, ili koristiti skraćenice kako bi mogli računati i brojeve koji se povremeno mijenjaju! Ispod se nalazi primjer za brojeve koji se ne mijenjaju:

Page 17: Uvod u programiranje i programski jezik Python

Dok se ispod nalaze primjeri za one koji su promjenjljivi (u ovom slučaju ih unosi korisnik programa):

Page 18: Uvod u programiranje i programski jezik Python

Iskazi ili statements i petlje ili loops

Page 19: Uvod u programiranje i programski jezik Python

IF/IF NOT iskaz je iskaz kojim provjeravamo da li je nešto tačno ili netačno. Primjera radi, reći ćemo da se traži ime korisnika, te ako je ime korisnika Amar, program ispisuje „Kako si Amare?“, a ako nije postavlja pitanje „Da li se znamo?“, u tom slučaju nam treba else statement, koji u bukvalnom prevodu znači „u protivnom“. Primjer u obliku koda:

Za nizanje više „if“ iskaza jedan iza drugog se koristi „elif“ iskaz, što je skraćenica od „else if“. Recimo da želimo, pored Amara, provjeriti da

li se korisnik možda zove Adi ili Kenan, to ćemo uraditi ovako:Ovakav kod se može pojednostaviti

dodavanjem liste, lista može sadržavati bilo kakve brojeve,

znakove koji označavaju npr. imena ili nadimke, a u kodu se označavaju

sa [ i ] (npr. list = [Amar, Adi, Kenan] je lista imena koja smo

koristili iznad). Python nam omogućava da provjeravamo da li je

određeno ime u listi te tada da pozovemo pozdravnu poruku sa tim

imenom.

Page 20: Uvod u programiranje i programski jezik Python

WHILE iskaz se koristi za ponavljajuće provjeravanje određenog iskaza sve dok isti nije tačan. Najlakše je isti objasniti na primjeru brojeva. Ako želimo povećavati neki broj za 1 sve dok ne „stignemo“ do broja koji nam je potreban, koristiti ćemo WHILE loop (petlju). Primjer u obliku koda:

Nakon pokretanja ovog programa, kao rezultat ćemo dobiti sljedeće:

Page 21: Uvod u programiranje i programski jezik Python

FOR iskaz se koristi kako bi „prošli“ kroz listu, tuple ili string u potrazi za određenim dijelom. For iskazom se možemo služiti i kako bi prošli kroz bazu podataka, te ispisali njen sadržaj. Primjer na listi (imitaciji baze podataka u ovom slučaju) korisnika banke:

Nakon pokretanja ovog programa ćemo kao rezultat dobiti sljedeće (naravno ukoliko smo kao akciju izabrali ispis):

Page 22: Uvod u programiranje i programski jezik Python

Try iskaz koristimo kada želimo „pokušati“ nešto uraditi. Try ima svoje prateće iskaze, kao što „if ima else“, a to su: except (kojim možemo uraditi nešto ukoliko se određena greška ili sve greške pojave), else (u protivnom) i finally (konačno). U ovom primjeru ćemo koristiti except, kako bi „uhvatili“ poruku o detaljima greške prilikom gašenja računara uz pomoć ovog programa, te je pokazali onako kako mi želimo, a ne onako kako je Python prikazuje (jer su kao takve nerazumljive korisniku):

Također, možemo i „narediti“ programu da nastavi kao da se ništa nije dogodilo korištenjem „pass“ pomoćnog iskaza. Primjer:

Page 23: Uvod u programiranje i programski jezik Python

WITH iskaz koristimo kako bi mogli koristiti neku naredbu jednostavnije u tom bloku koda. Najlakše je objasniti isti na primjeru ispod:

Drugi primjer pokazuje dio koda igrice, kojim se pozivamo na već prije definirane funkcije i provjeravamo da li se ime igrača nalazi u nekom od

fajlova, a ako se ne nalazi niti u jednom, privremeno sačuvamo imena svih prije dodanih igrača u memoriju, te dodamo novog na dno fajla u formatu „-

Ime“.

Page 24: Uvod u programiranje i programski jezik Python

Funkcije i definiranje istih

Page 25: Uvod u programiranje i programski jezik Python

Funkcije predstavljaju jedan blok koda, koji obavlja određenu ulogu. Kada i zašto koristiti funkcije? Funkcije koristimo onda, kada znamo da određeni blok koda želimo „koristiti“ i kasnije. Glavna odlika funkcija u Pythonu jeste pozivanje na iste u daljnjem toku koda (što znatno skraćuje posao, npr. lakše je napisati blok koda od 15 linija unutar funkcije, pa ga kasnije pozivati jednom linijom, nego svaki put pisati isti kod). Primjer:

Primjer iznad automatski poziva funkciju „informacije“ i ispisuje sljedeće:

Page 26: Uvod u programiranje i programski jezik Python

Razred (klasa) ili class

Page 27: Uvod u programiranje i programski jezik Python

Razredi(klase) su jedni od osnovnih principa svih objektno orijentisanih programa. Olakšavaju posao programerima na više načina. Klase omogućavaju ono što funkcije ne mogu. Funkcije ne mogu sadržavati u sebi neke promjenljive varijable. Klase, za razliku od funkcija (koje mogu samo slati podatke) imaju mogućnost primanja i slanja podataka. Ako želite praviti česte promjene u određenom bloku koda, za to su Vam potrebne klase. Unutar jedne klase se može definirati više funkcija, koje se naknadno mogu pozivati u toj klasi.

Page 28: Uvod u programiranje i programski jezik Python

Klase ćemo najlakše objasniti na primjeru. Recimo da imamo dva člana biblioteke (u ovom slučaju su uzeta samo dva člana kako bih lakše objasnio rad klase) pod imenom Amar i Emir, te ispis tačnog broja dana do isteka članarine! Primjer:

Brisati objekte jedne klase možemo koristeći već ugrađenu „del“ funkciju.

Page 29: Uvod u programiranje i programski jezik Python

Komparacija jednostavnog koda u Pythonu, C-u i BASIC-u, te njihov dijagram toka.

Page 30: Uvod u programiranje i programski jezik Python
Page 31: Uvod u programiranje i programski jezik Python

Hvala na pažnji