Uvod u jezik PYTHON

(priručnik za  predmet "Skript jezici")


© Matematički fakultet

Miljana Mladenović, Duško Vitas

O Python-u
Instalacija
Sintaksa jezika Python
Osnovne osobine
Službene reči
Operatori i njihovi prioriteti
Osnovne algoritamske strukture
Blok naredbi
if struktura
while struktura
Iskazi: break, continue, pass
Tipovi podataka u Python-u
Osnovni i ugradjeni tipovi
Brojevi
Konverzija formata
Neke matematičke funkcije
Neke random funkcije
Niske
Neke funkcije nad niskama
Formatiranje niski
Liste
Torke
Osnovni izrazi sa torkama
Rečnici
Skupovi
Operacije nad skupovima
Datoteke
Funkcije modula os za rad sa datotekama
Funkcije modula os za rad sa folderima
Izuzeci
Funkcije
Moduli
Paketi
Klase
Regularni izrazi
Baze podataka
Primeri u Netbeans-u

Python je platformski nezavisan objektno orijentisan, interpreterski i interaktivni programski jezik. Nastao je 1990.  a  njegov razvoj je započeo Guido van Rossum. Spada u grupu softvera otvorenog koda, sa dobrom podrškom, dokumentacijom i pratećim bibliotekama.

Python je jedan od retkih jezika koji su nastali u akademskim uslovima, a postigli su komercijalni uspeh. Dugo je važlo da akademske ustanove prave čiste jezike, sa novinama i jakom  filozofskom pozadinom, ali da takve jezike retko ko koristi van samih univerziteta. Primer za to su: Pascal, Simula, Algol, Haskell, Modula itd. S druge strane, prljavi, brzi, sa gledišta nauke slabi jezici za koje je zajedničko da imaju pragmatičan pristup, jezici pravljeni od hakera za hakere, su bivali prihvaćenii među profesionalcima. Tako je bilo jezicima: C, C++, Perl, PHP, Java itd. Python je jedinstven spoj čistog jezika, jasno zamišjenog, dobro projektovanog i implemenitranog, lakog za upotrebu, a opet dovoljno moćnog i brzog da bi bio prihvaćen među programerima. Python nalazi primenu u biološkim naukama, npr. za analizu gena, u matematičkim naukama za simulacije, za optimizaciju, kao kompjuterski algebarski sistem, alat za numeričku analizu, veštačku inteligenciju, itd.

Python je odličan "lepak  jezik",  jezik kojim se povezuju postojeći programi, pa im se preko Python-a daje zajednički  interfejs. Često koristi kao script mašina u raznim programima:  

Maya i Blender za 3D animacije, Gimp, Inkscape za grafiku, Civilization IV za kontrolu igre itd.

Ipak Python pokazuje pravu snagu u projektima koji su u potpunosti zasnovani na njemu.

BitTorrent klijent je izvorno napisan u njemu. Prvi web robot za Google je pisan u Pythonu, a ta kompanija i dalje koristi mnogo njegovog koda. Tako je i Guido van Rossum već nekoliko godina zaposlen u toj kompaniji. Youtube je zasnovan na Pythonu, a koristi ga i NASA. Installer za Red Hat Linux je napisan u Pythonu .

Trenutno aktuelna verzija je 3.0, ali je u velikoj primeni i prethodna verzija 2.6. Ime jezika potiče od britanske televizijske komedije Monty Python's  Flying Circus, čime je van Rossum  želeo da naglasi svoj osnovni cilj pri pravljenju novog jezika, da programiranje postane zabavno kao i pomenuta serija.

Poput Jave i Ruby-ja, ukoliko se ne koriste neke platformske specifičnosti, isti programski kod može se interpretirati jednako pod Linuxom, Windowsom, ili MACom.  Odgovarajuća instalacija se može  preuzeti sa adrese: http://www.python.org/download/

Glavna implementacija Python-a napisana je u jeziku C i zove se CPython. Pored ove, postoji  implemetacija i u Javi Jython. Ona omogućava kompilaciju koda u  Java bajtkod i upotrebu Java klasa unutar  Python modula (fajlova koji sadrži  Python programski kod). Implementacija Python web framework-a pod imenom Pylons omogućava visoku funkcionalnost Python-a do nivoa Jave. Odgovarajuća Jython  instalacija može se preuzeti sa adrese: http://www.jython.org/downloads.html

Implementacija pod imenom IronPython projekat je Microsoft-a za .NET okruženje. Instalacija na adresi: http://ironpython.net/download/

Možda najinteresantnija implementacija Python-a je u samom Python-u, tzv. Py Py gde je interpreter pisan u Python-u. Ova implementacija je znatno sporija od CPython -a, a prednost joj je u mogućnosti izmene ponašanja interpretera u toku izvršenja programa. Adresa: http://codespeak.net/pypy/dist/pypy/doc/

Postoje i neke druge implementacije za platforme koje nisu pomenute, kao i za neka okruženja mobilnih uređaja.

 

Beograd, novembar 2010.