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

Primjedbe

Popularno

Da li je poželjno biti anoniman na internetu (ili se predstavljati punim imenom i prezimenom)?

Fake poet

Snimci manifestacije "Titelitijada" održane u Titelu

Radostan dan

Kosmička era može da počne! 10, 9, 8, 7.... Naravno, pre 60 godina...

Bekstvo iz Titela

Kako manipulisati Windows licencom pomoću slmgr komande?

Ne brini (korak po korak)

Microsoft objavio - nova verzija Windowsa stiže...

Sistemska greška