Jython: Základy jazyka

jython copy.jpg Skôr než uká­že­me, ako mož­no v Jyt­ho­ne po­uží­vať exis­tu­jú­ce kniž­ni­ce na­pí­sa­né v Ja­ve, tre­ba sa oboz­ná­miť so zá­klad­mi ja­zy­ka. V nas­le­du­jú­cich nie­koľ­kých lek­ciách sa bu­de­me ve­no­vať zá­klad­ným dá­to­vým ty­pom a syn­taxi ja­zy­ka.

Ako spus­tiť prog­ram
S Jyt­ho­nom mož­no pra­co­vať dvo­ma spô­sob­mi. Dá sa s ním ko­mu­ni­ko­vať v inter­ak­tív­nom mó­de ale­bo mô­že slú­žiť ako inter­pret skrip­tov, kto­ré chce­me spus­tiť ako dáv­ku.

Inter­ak­tív­ny mód
Na naš­tar­to­va­nie inter­ak­tív­ne­ho mó­du spus­tí­me Jyt­hon z prí­ka­zo­vé­ho riad­ka po­mo­cou dáv­ko­vé­ho sú­bo­ru jyt­hon.bat, kto­rý sa auto­ma­tic­ky vy­tvo­rí pri in­šta­lá­cii. Po štar­te prog­ra­mu sa ob­ja­via nas­le­du­jú­ce riad­ky:

Jyt­hon 2.2.1 on ja­va1.5.0_03
Ty­pe "co­py­right", "cre­dits" or "li­cen­se" for
mo­re in­for­ma­tion.
>>>

Vi­dí­me tu in­for­má­cie o ver­zii Jyt­ho­nu a o ver­zii Ja­vy, v kto­rej pros­tre­dí je Jyt­hon spus­te­ný. Zna­ky >>> slú­žia ako znač­ka prí­ka­zo­vé­ho riad­ka za­ča­té­ho se­de­nia v pros­tre­dí Jyt­ho­nu.

Po­zn.: Vý­stup na ob­ra­zov­ke ne­bu­de vi­di­teľ­ným spô­so­bom od­lí­še­ný od za­dá­va­ných hod­nôt, kto­ré ste na­ty­po­va­li pri se­de­ní. Tuč­né fon­ty sú tu po­uži­té len na zvý­raz­ne­nie vý­stup­ných hod­nôt od za­dá­va­ných.

Po­čas inter­ak­tív­ne­ho se­de­nia mô­že­me vkla­dať frag­men­ty kó­du a okam­ži­te vi­dieť vý­sled­ky. Mož­no po­uží­vať aj pre­men­né a pri­ra­ďo­vať im hod­no­ty a po­tom na ne nes­kôr v tom­to se­de­ní od­ka­zo­vať. Naj­ľah­šie si to uká­že­me po­mo­cou zá­klad­ných ma­te­ma­tic­kých ope­rá­cií. Prík­lad veľ­mi jed­no­duc­hé­ho inter­ak­tív­ne­ho se­de­nia mô­že vy­ze­rať tak­to:

Jyt­hon 2.2.1 on ja­va1.5.0_03
Ty­pe "co­py­right", "cre­dits" or "li­cen­se" for
mo­re in­for­ma­tion.
>>> 2 + 2
4
>>> x = 2 * 2
>>> x
4
>>> y = x * 2 - 1
>>> y
7
>>> y/2
3
>>> svet_je_ploc­hy = 1
>>> if svet_je_ploc­hy:
... print "Da­vaj po­zor, aby si nep­re­pa­dol
cez ok­raj!!!"
...
Da­vaj po­zor, aby si nep­re­pa­dol cez ok­raj!!!

Pár po­zná­mok k uve­de­né­mu se­de­niu. Nes­kôr to eš­te raz zdô­raz­ní­me, ale už tu si všim­ni­te, že pri­ra­ďo­va­cí prí­kaz nev­ra­cia ni­ja­kú hod­no­tu. Je to len prí­kaz, a nie vý­raz, ako napr. v Ja­ve. Tro­ji­ca bo­diek, kto­rý­mi sa za­čí­na­jú pred­pos­led­né dva riad­ky, ozna­ču­je tzv. po­kra­čo­va­cie riad­ky prí­ka­zu. Se­de­nie ukon­čí­me stla­če­ním Ctrl – z v pros­tre­dí Win­dows, v pros­tre­dí Unixu po­tom po­mo­cou Ctrl – d. To­to tes­to­va­nie, expe­ri­men­to­va­nie a ob­ja­vo­va­nie nie je ob­med­ze­né len na Jyt­hon.

Spus­te­nie dáv­ky
Naj­jed­no­duc­hšia me­tó­da, ako spus­tiť už ho­to­vý skript z prí­ka­zo­vé­ho riad­ka, je za­dať prí­kaz:

C:\ho­me\hav­li­cek>jyt­hon na­zov_skrip­tu 

Ná­zov_skrip­tu je me­no sú­bo­ru, v kto­rom je skript ulo­že­ný. Sú­bor má kon­cov­ku .py . V ope­rač­nom sys­té­me Win­dows mož­no aso­cio­vať jyt­ho­nov­ské sú­bo­ry .py s dáv­kou jyt­hon.bat a po­tom spúš­ťať skrip­ty oby­čaj­ným po­kle­pa­ním na ná­zov sú­bo­ru.

Od­de­ľo­va­če riad­kov
Jed­not­li­vé prí­ka­zy v Jyt­ho­ne sa skla­da­jú z tak - zva­ných lo­gic­kých riad­kov. Čo je to lo­gic­ký ria­dok? Ja­va sa s tou­to otáz­kou vy­rov­ná­va po­mo­cou špe­ciál­nych zna­kov. V Ja­ve je od­de­ľo­va­čom lo­gic­kých riad­kov bod­ko­čiar­ka. Jed­no­duc­hý prí­kaz v Ja­ve vy­ze­rá nap­rík­lad tak­to:

Sys­tem.out.println("Hello world");

Všim­ni­te si bod­ko­čiar­ku na kon­ci prí­ka­zu! Te­raz sa po­zri­te na ek­vi­va­lent na­pí­sa­ný v Jyt­ho­ne:

print "Hello world"

Tu sa ne­vys­ky­tu­je ni­ja­ký špe­ciál­ny znak ho­vo­ria­ci: „Ha­ló, ka­ma­rát, tu sa kon­čí prí­kaz a všet­ko, čo je za mnou, pat­rí už k nie­čo­mu iné­mu.“ V Jy - tho­ne na roz­diel od iných prog­ra­mo­va­cích nás­tro­jov je po­sta­ču­jú­cim príz­na­kom kon­ca lo­gic­ké­ho riad­ka znak „new li­ne“, te­da no­vý ria­dok. To­to pla­tí tak pre prí­pad inter­ak­tív­nej kon­zo­ly, ako aj pre zdro­jo­vý kód ulo­že­ný v sú­bo­re.

Jed­not­li­vé riad­ky prog­ra­mo­vé­ho kó­du v Jy - tho­ne sú inter­pre­to­va­né ako sa­mos­tat­né lo­gic­ké riad­ky. Sú však prí­pa­dy, keď lo­gic­ký ria­dok rep­re­zen­tu­jú­ci ne­ja­ký prí­kaz nie je to is­té ako fy­zic­ký ria­dok. Tá­to si­tuácia nas­tá­va, po­kiaľ po­uži­je­me:

bod­ko­čiar­ku ako od­de­ľo­vač nie­koľ­kých lo­gic­kých riad­kov
spät­nú lom­ku na roz­de­le­nie dl­hé­ho prí­ka­zu na nie­koľ­ko riad­kov
tro­ji­té úvod­zov­ky pre tak­zva­ný do­ku­men­tač­ný re­ťa­zec

Bod­ko­čiar­ka
Bod­ko­čiar­ka slú­ži ako od­de­ľo­vač v prí­pa­de, keď prí­kaz je veľ­mi krát­ky a vy má­te do­jem, že by sa na ria­dok eš­te nie­čo moh­lo zmes­tiť. Po­kiaľ má­te z prog­ra­mo­va­nia v Ja­ve zvyk ukon­čo­vať prí­ka­zy bod­ko­čiar­kou, mô­že­te ju po­užiť.

>>> print "Hello world"; x = 123; print x
Hello world
123
>>>

Spät­ná lom­ka
Znak spät­nej lom­ky sa po­uží­va na roz­de­le­nie pridl­hé­ho prí­ka­zu do nie­koľ­kých fy­zic­kých riad­kov:

Jyt­hon 2.2.1 on ja­va1.5.0_03
Ty­pe "co­py­right", "cre­dits" or "li­cen­se" for
mo­re in­for­ma­tion.
>>> x = 1 + 2 + \
... 3 + 4
>>> print x
10

V prí­pa­de, že dl­hý prí­kaz ob­sa­hu­je, gu­ľa­té ( ), hra­na­té [ ] ale­bo zlo­že­né { } zá­tvor­ky, mož­no lo­gic­ký ria­dok roz­de­liť do nie­koľ­kých fy­zic­kých riad­kov i bez po­uži­tia spät­nej lom­ky:

>>> print ("to­to" +
... " po­tom to­to " +
... " a es­te tam­to, ano?")
to­to po­tom to­to a es­te tam­to, ano?

Tro­ji­té úvod­zov­ky (trip­le quotes)
S tro­ji­tý­mi úvod­zov­ka­mi sa stret­ne­me, keď sa bu­de­me za­obe­rať do­ku­men­tač­ný­mi re­ťaz­ca­mi. Pla­tí pre ne rov­na­ká po­dmien­ka ako pre pred­chád­za­jú­ce bo­dy. Sú po­uži­teľ­né iba v sú­bo­roch. Za­tiaľ len ma­lá ukáž­ka:

>>> print """To­to je vel­mi, ale nao­zaj vel­mi
dl­hy re­ta­zec,
... kto­ry sa roz­ta­hu­je na nie­kol­kych,
... pres­nej­sie po­ve­da­ne, na troch
riad­koch"""
To­to je vel­mi, ale nao­zaj vel­mi dl­hy re­ta­zec,
kto­ry sa roz­ta­hu­je na nie­kol­kych,
pres­nej­sie po­ve­da­ne, na troch riad­koch
Ďal­šie čas­ťi >>

Zdroj: Infoware



Ohodnoťte článok:
   
 

24 hodín

týždeň

mesiac

Najnovšie články

Jyt­hon: Per­zis­ten­tné ob­jek­ty a Ja­va pro­jek­cia
V predchádzajúcej časti sme ukázali, akým spôsobom sa robí pripojenie k databáze Caché. čítať »
 
Jyt­hon: Jyt­hon a da­ta­bá­za Cac­hé
Na pripojenie k databázovým systémom používa Jython rozhranie JDBC. To vyžaduje iba vhodný ovládač pre danú databázu. čítať »
 
Jyt­hon: Pre­men­né, ta­buľ­ky sym­bo­lov a roz­sa­hy plat­nos­ti v Jyt­ho­ne
V tejto časti sa budeme zaoberať otázkou, ako dlho je platná definícia premennej či funkcie a z ktorých miest sú tieto definície prístupné. čítať »
 
Jyt­hon: Mo­du­ly a ba­líč­ky v Jyt­ho­ne
V tejto časti vysvetlíme, čo sú moduly a balíčky, akým spôsobom možno efektívne organizovať vaše nástroje vytvorené v Jythone do logických celkov. čítať »
 
Jyt­hon: Fun­kcie a spô­so­by od­ov­zdá­va­nia pa­ra­met­rov
Jython, hoci je objektovo orientovaný, nepodporuje preťažovanie funkcií. Toto je vynahradené širokou paletou možností, ako odovzdávať parametre. čítať »
 
Jyt­hon: Fun­kcie
Pri programovaní sa často stretnete so situáciou, keď sa určité časti programu dajú znova využiť na rôznych miestach čítať »
 
Jyt­hon: Zdru­že­ný zoz­nam
V tejto časti nášho seriálu sa ešte v krátkosti pozrieme na cykly v Jythone, vstupno-výstupné operácie a na spustenie jythonovských modulov z príkazového riadka. čítať »
 
Jyt­hon: Lo­gic­ké vý­ra­zy ale­bo Čo je prav­da a čo lož
V tejto časti dokončíme prehľad jednoduchých príkazov a následne sa zameriame na štruktúrované príkazy. čítať »
 
 
 
  Zdieľaj cez Facebook Zdieľaj cez Google+ Zdieľaj cez Twitter Zdieľaj cez LinkedIn Správy z RSS Správy na smartfóne Správy cez newsletter