Preskoči na glavni sadržaj

Korišćenje interaktivnog prompta

5.1 Korišćenje interaktivnog prompt-a 

Dobro. Mislim da si sada spreman za malo rada? Idemo...
Otvori terminal vašeg operativnog sistema (kao što sam ti objasnio ranije, u delu koji govori o instalaciji i podešavanju), a zatim pokreni Python-ov interaktivni prompt kucajući:
python3
ili samo python, ukoliko se program "odaziva" na taj način.

OBRATI PAŽNJU!

Ukoliko na svom računaru imaš instalirano više verzija Python-a, osiguraj se da pokrećeš verziju 3, jer je ovaj tutorijal pisan baš za nju! To proveravaš sa gornjom komandom, ali imaj na umu, kao što sam i ranije rekao: po standardu označavanja python je komanda za verziju 2, a python3 za verziju 3, ali npr 3.3.0 na OS WindowsXP i Windows 7 se pokreće naredbom python!
Problem: Sada si me zbunio. Kako, gde, šta, zašto????
Rešenje: Evo ti brzi odgovor, kada otkucaš gornju komandu (python3, a ako neće onda samo python) treba da ugledaš ovo:
$ python3
Python 3.2.3 (default, Apr 10 2013, 05:29:11)
[GCC 4.6.3] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>>
Kao što vidiš, Python ti je „odgovorio“ sa nekim informacijama, koje mogu da budu i različite od ovih koje sam ja priložio, i prva informacija je upravo verzija programa koji koristiš! Ako ti nije napisano Python 3.X (gde je x neki broj, nije bitno u ovom trenutku, važno je da onaj broj na početku bude 3), pokrenuo si neku drugu verziju, moraš izaći iz interaktivnog prompta i pokrenuti adekvatnu verziju.
Problem: Auh.... A kako da izađem iz „ovoga“?
Rešenje: Prvo i prvo, nije to „ovo“! Ono u šta trenutno gledaš se zove Python interpreter (ili interaktivni prompt. Malo kasnije će ti biti jasno zašto se to tako zove, i čemu služi.
Drugo, da bi izašao iz „toga “ (samo ponavljam kako si ga ti nazvao, nema ljutiš) obrati pažnju na oznaku:
>>>
Iza nje ti trepće kursor, znači tu treba da kucaš nešto... Šta da otkucaš pa da „pobegneš“ od ovog strašnog baje zvanog Python? Jednostavno je, kucaj:
exit()
Ne zaboravi zagrade, one su deo naredbe! I? Opa! Nalaziš se opet u okruženju shell-a operativnog sistema!
Ajde sada, za vežbu, par puta pokreni Python interaktivni prompt, i izađi iz njega, kako bi se malo više upoznao sa ovim načinom pokretanja i svojim prvim komandama! 
Eh, a sad da prestanem da te mučim. Za izlazak iz prompta postoje zgodne prečice na tastaturi: ako koristiš Linux ili Unix shell, možeš da izađeš iz interaktivnog prompta pritiskom tastera ctrl+d a ako koristiš Windows komandnu liniju, pritisni tastere ctrl+z, a zatim enter taster. Ima i ljudi koji „izlaze“ iz prompta jednostavno zatvarajući prozor, ali takvi ljudi samo sebe muče, jer ako im terminal nije „pri ruci“, moraju uvek da prolaze kroz komplikovanu proceduru pokretanja komandne linije, pa pokretanje interaktivnog prompta, ali, avaj, ako oni imaju luksuz da troše dragoceno vreme svoga života na takve stvari, ja neću da se bunim!
Kao što rekoh, kada si pokrenuo python3, koncentriši se na ovu oznaku: 
>>>
Sada znaš da tu treba da kucaš. Ali šta?
Problem: Kako naterati računar da napiše ono što ja hoću, na primer, da pozdravi nekog, a da pri tom ne radi ništa drugo, sem toga?
Rešenje: Pa evo, u interaktivnom promptu:
$ python3
Python 3.2.3 (default, Apr 10 2013, 05:29:11)
[GCC 4.6.3] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> "Hello World!"
'Hello World!'
>>> 'Pozdrav Svima!'
'Pozdrav Svima!'
>>> "Šta se radi?"
'Šta se radi?'
>>> 'Kako si?'
'Kako si?'
>>>
Jednostavno, posle oznake >>> napišemo našu poruku pod navodnicima, ili apostrofima, i kada pritisnemo Enter na tastaturi, Python nam trenutno daje „odgovor“ (hej, jel on to neki papagaj? Samo ponavlja ono što sam ukucao! - Ma jok, to je eho u Pythonovom planinskom masivu, ti to samo pričaš sam sa sobom :) )
Problem: Koristim Windows operativni sistem, i ovo ne radi – izbacuje mi grešku prilikom kucanja naših karaktera (Š, Č itd....)
Rešenje: Rešenje ne postoji! Jednostavno, rešenja koja su ponuđena unutar Windows operativnog sistema nisu predviđena za karaktere koji su nestandardni za englesko govorno područje. Ali, to ne znači da naši karakteri nisu i podržani! Zato postoji i jadno „zaobilaženje prepreka“ koje se ne može smatrati trajnim rešenjem - da bi u PowerShell-u ili CMD-u mogao da vidiš i kucaš naše karaktere, možeš desnim klikom na ikonicu shell-a izabrati properties, pa u tabu fonts izabrati neki drugi od ponuđenih:
(kartica za podešavanje fontova pri korišćenju PowerShell-a)
Ovakvim rešenjem niste u suštini ništa rešili, ali ste makar Pythonu omogućili da se služi i našim fontovima, unutar komandne linije Windowsa. Ako želiš da zaista, i bez većih problema koristiš naša slova i oznake, pronađi na internetu neki terminal emulator za Windows koji ti to može omogućiti, ili – jednostavno u interaktivnom promptu nemoj koristiti oznake koje nisu specifične za engleski jezik!
Druga solucija je da se koristi IDLE, o kojem ću ti govoriti za koji tren, ali pre toga vidim da imaš neki drugi problem?
Problem: Joj, nešto sam zeznuo....
>>> "Šta se to upravo desilo?'
  File "", line 1
    "Šta se to upravo desilo?'
                              ^
SyntaxError: EOL while scanning string literal
>>> 
Odgovor: Hehe, kako se kaže: „Care“! Smejem ti se, ne zbog ovoga, već zato što si se uplašio. Ovo ne treba da te plaši, jer je svakodnevna pojava i kod ljudi koji se bave programiranjem po 30 godina. Python ti je, umesto očekivanog odgovora, jednostavno rekao da te – ne razume i zato ne može da uradi ono što od njega tražiš (da ponavlja tvoje reči). Zapamti ovo: računari ne greše (videćeš primer kada to i nije baš sasvim tačno, ali opet, nije njihova krivica, već krivica nepažljivog programera) – oni samo rade ono što im kažeš. I to moraš da im kažeš na nekom jeziku koji oni razumeju. Po toj logici, kada si instalirao Python na  svoj računar, ti si ga naučio da priča Python jezik. E, sad... Problem je u tome što on sada tečno priča na Python-u, a ti.... nažalost, još uvek ne! Znači, nije ovo njegova greška, već tvoja. Ne ljuti se na mene što ti ovo kažem, i nemoj da se razočaravaš ili plašiš, već prihvati – i najbolji prave greške i to je savršeno normalna i svakodnevna pojava, i nemoj da je shvataš lično. Evo za koji tren ću da te nateram da ponoviš ovu grešku još 50 puta, kako bi shvatio šta i kako se desilo, i da malo „razbijemo strah i tremu“.
No, samo čas, da ne žurimo kao „volovi pred rudu“.
Pogledaj dobro šta ti je Python napisao. Kaže nešto tipa File, bla, bla, linija, neki broj, pa je pokazao (malo li je?) šta si mu ti upravo „zadao“, i na kraju napisao da je to greška u sintaksi (ako ne znaš šta je sintaksa – to su pravila jezika, kako onog kojim ti pričaš sa svojim prijateljima, tako i onih kojima računari „pričaju“, i, jedna super stvar – napisao je nešto tipa EOL dok je pokušavao da te razume. Verovatno se pitaš šta je to EOL? EOL ili na engleskom End Of Line je oznaka koju si poslao računaru kada si pritisnuo taster Enter.
Čekaj... Pa pritisnuo sam Enter kao i svaki drugi put?
Pogledaj malo bolje... Počeo si svoju poruku sa navodnikom, a završio sa apostrofom! A to, očigledno, nije dozvoljeno.
Znači, treba da zapamtiš – kada počneš neku poruku sa navodnikom treba da ga završiš isto sa navodnikom, a kada počneš sa apostofom – završi je sa apostrofom!
Sada kada znaš ovo, pokušaj da napraviš što više ovakvih grešaka, igraj se malo. 
Interesuje me, šta će da se desi u ovom slučaju:
>>> "Pišem ti pismo: "Kako si?" draga moja" 
Huh? Počeo si i završio sa navodnicima, ali nešto ne valja?
Takođe, isprobaj dvostruke navodnike, ili apostrofe na početku i na kraju (opet ti napominjem, kada počneš sa 2 navodnika, i završi sa dva navodnika, nikako drugačije!).
A, za kraj, isprobaj i trostruke navodnike ili apostrofe... 
Da li možeš nekako „srediti“ Python, da ti ne izbaci grešku na gornji primer u kom pišeš pismo nekoj svojoj devojci?
Ako ne možeš, videćeš kasnije u tutorijalu odgovor na ovu glavobolju, sada mi je cilj da se ti malo igraš u interaktivnom promptu, a kada ti dosadi, vrati se ovde, imamo neka druga posla da završimo.

5 Prvi koraci Indeks 5.2 Izbor tekst editora

Diskusija

Ovo je mesto za predloge, sugestije, kritike....
Zato, druže, hitno pošalji komentar

Najčitanije ovog meseca

Vremenske nepogode

Vremenske nepogode

📧 Kako na responzivnim Blogger-ovim temama izmeniti "Subscribe" dugme? 📧

📧 Kako na responzivnim Blogger-ovim temama 📧 📧 izmeniti 📧 📧 "Subscribe" dugme? 📧 2018-ta je godina i neke stvari zaista lagano klize u istoriju. Jedna od tih stvari, koja je veoma korisna za blogove i pisanja na njima, je mogućnost da čitaoci primaju Vaše nove tekstove na svoju email adresu. Popularni "subscribe" lagano biva zamenjen sa opcijama primanja obaveštenja sa blogova koje pratite direktno u pretraživaču ili čak i u samom operativniom sistemu (notifikacije). Međutim, popularni RSS feed-ovi nisu mrtvi, i zbog toga je važno imati među svojim čitaocima i ljude koji vole da koriste svoju elektronsku poštu da bi pratili sadržaje sa blogova. Jedna od popularnijih platformi za pisanje blogova Blogger je prošle godine predstavila novi set responzivnih tema. Iako savremene, ovim temama nedostaje mnogo opcija za prilagođavanje. Jedna od opcija je i izmena teksta na dugmadima. Iz tog razloga, u ovom tutorijalu će biti pokazano kako se može promeniti tekst i sa…

Definisanje podrazumevanih vrednosti argumenata funkcije

9.4 Definisanje podrazumevanih vrednosti argumenata funkcije  Sada kada smo naučili da je najpametniji način komunikacije programa sa funkcijom kroz argumente prilikom pozivanja te funkcije, možemo malo da „uđemo“ i u tu filozofiju vezanu za argumenate i parametre. Prvi slučaj je sledeći: zamisli da imaš neku funkciju koja predstavlja tvoj doručak. Ti voliš da jedeš kajganu, i zato bi bilo prilično glupo da ti svaki dan kažeš – daj mi za doručak kajganu, umesto toga, brže i pametnije je da sedneš za sto i da dobiješ kajganu. Jedino ako ti je kajgane već preko glave, ti kažeš – daj mi za doručak sendvič! Na istu foru, u nekim funkcijama ćeš želeti da njeni parametri budu opcioni i da funkcija koristi neke podrazumevane (default) vrednosti, za slučaj da ne želimo da konstantno prosleđujemo iste vrednosti za njih. To postižemo definisanjem podrazumevanih vrednosti argumenata i to na sledeći način: prilikom definisanja funkcije mi definišemo podrazumevanu vrednost parametra tako što dodam…

Novi mesec.... Nova tema....

Novi mesec.... Nova tema.... Poštovani čitaoci i pratioci, Verovatno ste već primetili novi izgled bloga. Došlo je "ono" vreme u godini kada se nešto menja. a mnogi ljudi (uključujući i mene) se pitaju: "Zašto baš ja moram sada (nešto) da menjam?". Razloga za "za" i razloga "protiv" uvek ima mnogo. Gotovo isto onoliko koliko i ima izgovora za "za", kao i za "protiv". Ali, eto...
Možda se izgled bloga ne bi ni menjao da nisam u privatnom životu bio opterećen nekim problemima, čije rešavanje ne zavisi od mene? Zapravo, upravo je to bio glavna pokretačka snaga za ovaj korak. Kao što mnogi udaraju u vreće za boks kada su nervozni, tako sam i ja "udarao" po tastaturi kako bi se izbacila frustracija (oko nekih drugih stvari), ali ne beskorisno, već kreirajući nešto, za šta se nadam da će Vam se svideti. Ali, nije samo to.... Prošla tema bloga (prilagođeni Contempto) je imala jedan nedostatak. Naime, u kombinaciji sa AdSe…

Kako podesiti sigurnu konekciju i kako se izboriti sa mešovitim sadržajem na Vašem Blogger blogu?

Kako podesiti sigurnu konekciju i kako se izboriti sa mešovitim sadržajem na Vašem Blogger blogu? U 2018g. je pojam kompjuterske sigurnosti dovoljno sazreo, kako među ljudima koji kreiraju programe i sadržaje, tako i među običnim korisnicima. Kreatori programa koriste sve raspoložive resurse kako bi krajnjeg korisnika osigurali od raznih internet pretnji, najčešće putem vizuelnih ili audio obaveštenja, blokiranja određenih sadržaja i sl. Sa druge strane, kreatori sadržaja najčešće svojom nepažnjom ili neznanjem dovedu sebe u položaj da njihov sadržaj bude označen kao nesiguran. Za krajnjeg korisnika je najbitniji jedan od prvih znakova bezbednosti - sigurna konekcija. On tu sigurnu konekciju prepoznaje tako što se ona odvija putem linkova koji počinju sa https:// (umesto pređašnjih http://). Podaci koji se šalju putem ovakvih linkova su osigurani TLS protokolom, tj oni su (između ostalog) enkriptovani. Koliko je važno da vaša konekcija bude sa prefiksom https govori i činjenica da na…

Dalja unapređivanja programa

13.6 Dalja unapređivanja programa Jupi.... Sada imam program koji zadovoljava sve korisnike, sada napokon mogu odahnuti... Težak trud se baš isplati, zar ne? GREŠKA! Ne može se odahnuti nikada. Ukoliko si predstavio svoj program širokom auditorijumu, više nema stajanja. Ti si sebe ubacio u tzv software development process – a to je običan ciklus, u kome ti moraš da slušaš korisnike, usavršavaš sebe i svoj softver i implementiraš te ideje, itd.
Na primer, ova četvrta verzija programa je sasvim zadovoljavajuća skripta za rad većine korisnika – ali onih koji i nemaju specifične zahteve, pa čak i zarad njihovog (i tvog) zadovoljstva uvek postoji prostor za poboljšanja. Recimo, moja prva zamerka bi bila ta, što je program previše „pričljiv“ - tj. kada god ga pokrenem moram da unesem i izvore i destinaciju. To je za mene glupo, treba mi neki program koji će zapamtiti moj izbor, tako da kada god se pokrene sam uradi sve, bez da me „davi“ (na primer, hoću da podesim moj OS da pokreće ovaj pro…

R.I.P. Dolores O'Riordan

R.I.P. Dolores O'Riordan Prošle nedelje (u ponedeljak 15. januara 2018g.) nas je zatekla vest o smrti Dolores O'Riordan pevačici i frontmenu benda The Cranberries. Ona je premuinula pod nerazjašnjenim okolnostima u Londonskom hotelu "London Hilton on Park Lane" u kom je odsela za potrebe snimanja. Imala je 46 godina i za sobom je ostavila neizbrisiv trag, naročito sa bendom The Cranberries. Ovo je prilika da se podsetimo pesama po kojima ćemo je pamtiti. Najbolje pesme Opus grupe The Cranberries (1990. - 2013g. i 2009. - do danas) je za mnoge u svoje vreme bio prilično revolucionaran. U trenucima kada se svet i Evropa dramatično menjaju, pucajući po nekim starim šavovima, u momentima kada su se stvarali konflikti, ratovi, socijalna raslojavanja... stvarao se osećaj da je potrebno poslati poruku, i to ne bilo kakvu, već poruku koja se jasno i glasno čuje! The Cranberries su bili jedan od bendova koji je to uspešno i učinio. U svakom slučaju, njihovim pesmama nije ned…

Kako kreirati kontakt formu na zasebnoj stranici u Blogger-u?

Kako kreirati kontakt formu na zasebnoj stranici u Blogger-u? Blogger je jedna od najboljih platforma na internetu namenjena kreatorima raznoraznih sadržaja. Ipak neka rešenja, koja Blogger implementira u sebi, najčešće ne zadovoljavaju korisničke potrebe. Jedna od tih problematičnih stavki je i formular za kontakt autora bloga. U Blogger-u je to rešeno preko gedžeta koji možemo postaviti bilo gde u našoj temi, a najčešće ga autori stavljaju u bočnu traku. Problem kod ovog pristupa je što će kontakt forma da bude prisutna na svakoj strani koju posetilac otvori. Iako je praktično, ovo rešenje ne prati savremene trendove, gde se smatra da ukoliko korisnik već ima mogućnost ostavljanja komentara ispod teksta, ne treba ga opterećivati sa još jednim poljem za kontakt, jer ga to jednostavno - zbunjuje! Umesto takvog rešenja, većina današnjih blogova i sajtova, formular za kontakt postavljaju ili na posebnu stranu ili kao integralni deo stranice koja daje informacije o samom tom blogu (popu…

Dodela vrednosti

7.4 Dodela vrednosti U Pythonu se dodela vrednosti obično odvija sa leva na desno. To znači da se operacije sa istim prvenstvom izvršavanja izvršavaju sa leve na desnu stranu. Na primer, 2 + 3 + 4, Python izvršava kao (2 + 3) + 4, tj prvo sabira ono što se nalazi skroz sa leve strane, pa zatim ide ka desnoj strani izraza. Neki operateri poput dodele vrednosti promenljivoj (=), imaju dodelu vrednosti koja ide sa desne, prema levoj strani tj a = b = c, Python tretira kao a = (b = c) .

7.3 Promena redosleda
izvršavanjaIndeks7.5 Matematički izrazi
u našem programu

Četvrta verzija programa

13.5 Četvrta verzija programaProblem: Jedan moj korisnik ima problem. Pogledaj šta mu se desi kada odjedanput pokuša da ubaci više fajlova u naš program: ./beckap_v3.py Unesi imena fajlova koje želiš da bekapuješ Unesi reč "kraj" za kraj unosa. Veran Bekaper v3.0 >>> '/home/lenj/Desktop/Novi rad/Test Kodovi' '/home/lenj/Desktop/Novi rad/Primeri Python kodova.odt' '/home/lenj/Desktop/Novi rad/Problemator.odt' '/home/lenj/Desktop/Novi rad/Problemator.pdf' '/home/lenj/Desktop/Novi rad/Skripta za Python.odt' Unesi reč "kraj" za kraj unosa. Veran Bekaper v3.0 >>> kraj OPREZ! Putanja /home/lenj/Desktop/Novi rad/Test Kodovi' '/home/lenj/Desktop/Novi rad/Primeri Python kodova.odt' '/home/lenj/Desktop/Novi rad/Problemator.odt' '/home/lenj/Desktop/Novi rad/Problemator.pdf' '/home/lenj/Desktop/Novi rad/Skripta za Python.odt NE POSTOJI! Želite li da unesete novu putanju, pritisn…