{"id":8269,"date":"2014-09-27T19:10:45","date_gmt":"2014-09-27T23:10:45","guid":{"rendered":"http:\/\/cscircles.cemc.uwaterloo.ca\/?page_id=8269"},"modified":"2014-10-22T11:45:52","modified_gmt":"2014-10-22T15:45:52","slug":"13-lt","status":"publish","type":"page","link":"https:\/\/cscircles.cemc.uwaterloo.ca\/dev\/13-lt\/","title":{"rendered":"13: S\u0105ra\u0161ai"},"content":{"rendered":"<!-- Please retain this notice and add more notes if you create a new version.<br \/>\nLithuanian translators: Jurgis Pralgauskis, jurgis.pralgauskis@gmail.com, Aidis Stukas aidiss@gmail.com<br \/>\nOriginal lesson author: David Pritchard, daveagp@gmail.com, http:\/\/cscircles.ca<br \/>\nLicense: http:\/\/creativecommons.org\/licenses\/by-nc-sa\/3.0\/-->\n<p>S\u0105ra\u0161as - \u201e<strong>list<\/strong>\u201c -\u00a0leid\u017eia saugoti reik\u0161mi\u0173 eil\u0119. Vietoje to, kad ra\u0161ytume program\u0105 su daug kintam\u0173j\u0173,\u00a0galime tur\u0117ti\u00a0s\u0105ra\u0161\u0105\u00a0<code>x<\/code> ir pasiekti jo elementus pagal numerius:\u00a0<code>x[0]<\/code>, <code>x[1]<\/code>, <code>x[2]<\/code> ir t.t.\u00a0 (Numeriai nurodomi lau\u017etiniuose skliaustuose.) Numer\u012f galima nurodyti,\u00a0naudojant kintam\u0105j\u012f, pvz, <code>x[i]<\/code> ir\u00a0<code>x[i+1]<\/code>. Tai leid\u017eia,\u00a0cikl\u0173 pagalba,\u00a0tvarkyti didelius duomen\u0173 kiekius.<\/p>\n<p>O kaip sukurti s\u0105ra\u0161\u0105?<\/p>\n<pre>myList = [101, 2014, 4.5] \u00a0 # reik\u0161m\u0117s i\u0161vardinamos tarp lau\u017etini\u0173 skliaust\u0173 (atskirtos kableliais)<\/pre>Tai sukuria s\u0105ra\u0161\u0105\u00a0 <code>myList<\/code>. S\u0105ra\u0161e yra 3 elementai\/nariai. Kiekvienas s\u0105ra\u0161o elementas turi savo numer\u012f (<strong>indeks\u0105<\/strong>): pirmojo elemento indeksas visada yra 0, antro elemento - 1, tre\u010dio - 2 ir t.t. S\u0105ra\u0161o elementai yra kaip kintamieji - jie\u00a0pasiekiami:<\/p>\n<p style=\"text-align: center;\"><code>\u00absarasoVardas\u00bb[\u00abeilNr\u00bb]<\/code><\/p>\n<p>M\u016bs\u0173 pavyzdyje, <code>myList[0]<\/code>\u00a0yra kintamasis, kurio reik\u0161m\u0117 yra <code>100<\/code>, o\u00a0<code>print(myList[2])<\/code> <a href=\"https:\/\/cscircles.cemc.uwaterloo.ca\/dev\/console\/?consolecode=myList%20%3D%20%5B100%2C%202014%2C%204.5%5D%0Aprint%28myList%5B2%5D%29\" target=\"_blank\">atspausdint\u0173<\/a> <code>4.5<\/code>.<\/p>\n<p>Da\u017enai reikia s\u0105ra\u0161\u0105 <strong>papildyti<\/strong> palaipsniui: tam naudojama s\u0105ra\u0161o komanda (metodas) <code>append( )<\/code>, pavyzd\u017eiui:<\/p>\n<p><form class=\"pbform\" action=\"#\" id=\"pbform0\" method=\"POST\">\n<div class='pybox modeNeutral  facultative' id='pybox0'>\n<div class=\"heading\"><span class='type'>Example: <\/span><span class='title'>S\u0105ra\u0161o papildymas<\/span><\/div><div class='pyboxTextwrap pyboxCodewrap RO '  style='height: 110px;'><textarea wrap='off' name='usercode0' id='usercode0'  cols=10 rows=4 readonly='readonly'  style = 'height : 110px;'  class='pyboxCode RO'>\nmyList = [ ] # tu\u0161\u010dias s\u0105ra\u0161as\nmyList.append(10)  # papildo nauja reik\u0161me\nmyList.append(15)  # papildo nauja reik\u0161me\nprint(\"myList dabar yra\", myList)  # atspausdina<\/textarea><\/div>\n<div id='pbhistory0' class='flexcontain' style='display:none;'><\/div>\n<div class='pyboxbuttons'><table><tr>\n<td><input type='submit' name='submit' id='submit0' value=' '\/><\/td>\n<td><input type='button' name='consolecopy' value=\"Open in console\" onclick=\"pbConsoleCopy(0)\" ><\/td>\n<td><input type='button' name='visualize' value=\"Visualize\" onclick=\"pbVisualize(0,'N')\" ><\/td>\n<\/tr><\/table><\/div>\n<input type=\"hidden\" name=\"lang\" value=\"\"\/><input type=\"hidden\" id=\"inputInUse0\" name=\"inputInUse\" value=\"Y\"\/>\n<input type=\"hidden\" name=\"pyId\" value=\"0\"\/>\n<input type=\"hidden\" name=\"hash\" value=\"e58545bd6fa7b235f484703c9b099cd6\"\/>\n<div id='pbresults0' class='pbresults'><\/div>\n<\/div>\n<\/form>\n<script type='text\/javascript'>document.getElementById(\"submit0\").value = \"Run program\";document.getElementById(\"inputInUse0\").value = \"N\";<\/script>\n<\/p>\n<p>S\u0105ra\u0161uose galima <strong>keisti bei pa\u0161alinti elementus<\/strong> (pagal numer\u012f).<\/p>\n<p><form class=\"pbform\" action=\"#\" id=\"pbform1\" method=\"POST\">\n<div class='pybox modeNeutral  facultative' id='pybox1'>\n<div class=\"heading\"><span class='type'>Example: <\/span><span class='title'>Elemento pakeitimas bei i\u0161trynimas<\/span><\/div>S\u0105ra\u0161o element\u0173 keitimas ir spausdinimas.<div class='pyboxTextwrap pyboxCodewrap RO '  style='height: 136px;'><textarea wrap='off' name='usercode1' id='usercode1'  cols=10 rows=5 readonly='readonly'  style = 'height : 136px;'  class='pyboxCode RO'>\nnumbers = ['zero', 'one', 'two']\nnumbers[0] = 'nulis'\nprint('pakeitus element\u0105:', numbers)\ndel numbers[1]  #  pa\u0161alina element\u0105\nprint('pa\u0161alinus element\u0105:', numbers)<\/textarea><\/div>\n<div id='pbhistory1' class='flexcontain' style='display:none;'><\/div>\n<div class='pyboxbuttons'><table><tr>\n<td><input type='submit' name='submit' id='submit1' value=' '\/><\/td>\n<td><input type='button' name='consolecopy' value=\"Open in console\" onclick=\"pbConsoleCopy(1)\" ><\/td>\n<td><input type='button' name='visualize' value=\"Visualize\" onclick=\"pbVisualize(1,'N')\" ><\/td>\n<\/tr><\/table><\/div>\n<input type=\"hidden\" name=\"lang\" value=\"\"\/><input type=\"hidden\" id=\"inputInUse1\" name=\"inputInUse\" value=\"Y\"\/>\n<input type=\"hidden\" name=\"pyId\" value=\"1\"\/>\n<input type=\"hidden\" name=\"hash\" value=\"ca65b0dcf0efbf447078cd0da6fcb586\"\/>\n<div id='pbresults1' class='pbresults'><\/div>\n<\/div>\n<\/form>\n<script type='text\/javascript'>document.getElementById(\"submit1\").value = \"Run program\";document.getElementById(\"inputInUse1\").value = \"N\";<\/script>\n<\/p>\n<p>Kaip matote, <code>numbers[0]<\/code>\u00a0reik\u0161m\u0117 buvo pakeista (kaip ir bet kokio\u00a0kintamojo).<\/p>\n<p>Pabandykite nusp\u0117ti galutin\u0119 \u017eemiau esan\u010dio pavyzd\u017eio situacij\u0105, o tada palyginkite savo sp\u0117jim\u0105 su rezultatu...<\/p>\n<p><iframe width='100%' height='480' frameborder='0' scrolling='no' src='https:\/\/cscircles.cemc.uwaterloo.ca\/dev\/wp-content\/plugins\/pybox\/OnlinePythonTutor3-cemc\/iframe-embed.html#code=myList+%3D+%5B1%2C+10%2C+100%2C+1000%5D%0Afor+i+in+range%280%2C+2%29%3A%0A++myList%5Bi%5D+%3D+2%2AmyList%5Bi%5D%2Bi&cumulative=false&heapPrimitives=false&drawParentPointers=false&textReferences=false&showOnlyOutputs=false&py=3&curInstr=0&resizeContainer=true&highlightLines&width=350&rightStdout=1'><\/iframe><\/p>\n<div class='pybox modeNeutral' id='pybox2'>\n<img title='You have not yet completed this problem.' src='https:\/\/cscircles.cemc.uwaterloo.ca\/dev\/wp-content\/plugins\/pybox\/files\/icon.png' class='pycheck'\/><div class=\"heading\"><span class='type'>Multiple Choice Exercise: <\/span><span class='title'>Elementas kaip numeris<\/span><\/div><div> K\u0105 atspausdina \u0161is kodo fragmentas?<\/p>\n<pre>stuff = [2, 25, 80, 12]\r\nstuff[stuff[0]] = stuff[3]\r\nprint(stuff)<\/pre><\/div><label>Your choice: <\/label><select id=\"pyselect2\"><option value=\"d\" selected>Select one<\/option><option value=\"r\">[2, 25, 12, 12]<\/option><option value=\"w\">[12, 25, 80, 12]<\/option><option value=\"w\">\u0160is kodas neveiks - bus klaida.<\/option><option value=\"w\">[2, 25, 80, 80]<\/option><option value=\"w\">[2, 25, 80, 12]<\/option><\/select><div class='pyboxbuttons'><input type=\"hidden\" name=\"lang\" value=\"\"\/><input type=\"hidden\" name=\"slug\" value=\"13.indexindex\"\/><input type='submit' style='margin:5px;' value='Check answer' onClick='pbMultiCheck(2)'\/><\/div><div class=\"pbresults\" id=\"pyMultiResults2\"><\/div><div class=\"epilogue\">Teisingai! Pa\u017ei\u016br\u0117kite \u012f antr\u0105 eilut\u0119. De\u0161in\u0117je esan\u010dio <code>stuff[3]<\/code> reik\u0161m\u0117 yra <code>12<\/code>. Kairiojoje pus\u0117je esan\u010dio <code>stuff[0]<\/code> reik\u0161m\u0117 yra <code>2<\/code>, taigi, \u012fsta\u010dius, <code>stuff[stuff[0]]<\/code> atitinka <code>stuff[2]<\/code>. \u0160io kintamojo reik\u0161m\u0117 yra pakei\u010diama (i\u0161 <code>80<\/code>) \u012f <code>12<\/code>.<\/div><\/div>\n<p><table class='pywarn'><tr><td class='pywarnleft'><img src='https:\/\/cscircles.cemc.uwaterloo.ca\/dev\/wp-content\/plugins\/pybox\/files\/warning.png'\/><\/td><td class='pywarnright'><span> Tai, k\u0105 Pitone vadiname <strong>list<\/strong> (s\u0105ra\u0161u), kitose programavimo kalbose da\u017eniausiai vadinama <strong>array<\/strong> (masyvu). Pitone taip pat yra \u00a0<a href=\"http:\/\/docs.python.org\/py3k\/library\/array.html\">array<\/a>\u00a0 - naudojamas\u00a0vienodo tipo reik\u0161m\u0117ms saugoti (bet tik skai\u010diams arba simboliams). Tuo tarpu \u012fprastame s\u0105ra\u0161e (<strong>list<\/strong>) vienu metu gali b\u016bti skai\u010diai, \u017eod\u017eiai ir bet kokios kitos reik\u0161m\u0117s. <\/span><\/td><\/table><\/p>\n<h3>Da\u017eniausiai pasitaikan\u010dios klaidos<\/h3>\n<p>Jei nurodysite per didel\u012f\u00a0elemento numer\u012f, bus\u00a0klaida:<\/p>\n<p><form class=\"pbform\" action=\"#\" id=\"pbform3\" method=\"POST\">\n<div class='pybox modeNeutral  facultative' id='pybox3'>\n<div class=\"heading\"><span class=\"title\">Example<\/span><\/div>Out-of-range error.<div class='pyboxTextwrap pyboxCodewrap RO '  style='height: 58px;'><textarea wrap='off' name='usercode3' id='usercode3'  cols=10 rows=2 readonly='readonly'  style = 'height : 58px;'  class='pyboxCode RO'>\nmyList=[1, 2, 4, 8]\nprint(myList[4])<\/textarea><\/div>\n<div id='pbhistory3' class='flexcontain' style='display:none;'><\/div>\n<div class='pyboxbuttons'><table><tr>\n<td><input type='submit' name='submit' id='submit3' value=' '\/><\/td>\n<td><input type='button' name='consolecopy' value=\"Open in console\" onclick=\"pbConsoleCopy(3)\" ><\/td>\n<td><input type='button' name='visualize' value=\"Visualize\" onclick=\"pbVisualize(3,'N')\" ><\/td>\n<\/tr><\/table><\/div>\n<input type=\"hidden\" name=\"lang\" value=\"\"\/><input type=\"hidden\" id=\"inputInUse3\" name=\"inputInUse\" value=\"Y\"\/>\n<input type=\"hidden\" name=\"pyId\" value=\"3\"\/>\n<input type=\"hidden\" name=\"hash\" value=\"d236bc08f9f6bf1c1ceac57fa1675129\"\/>\n<div id='pbresults3' class='pbresults'><\/div>\n<\/div>\n<\/form>\n<script type='text\/javascript'>document.getElementById(\"submit3\").value = \"Run program\";document.getElementById(\"inputInUse3\").value = \"N\";<\/script>\n<\/p>\n<p>Auk\u0161\u010diau esan\u010diame pavyzdyje <code>myList<\/code> turi 4 elementus. Pirmojo numeris\u00a0yra 0, paskutiniojo - 3. Nurod\u0119\u00a04, 5 ar bet kur\u012f didesn\u012f skai\u010di\u0173, gausime klaid\u0105.<\/p>\n<p><span style=\"color: #000000; font-size: 23px; line-height: 35px;\">Naudingos operacijos<\/span><\/p>\n<h3>S\u0105ra\u0161o ilgis: <code>len(\u00ablist\u00bb).<\/code><\/h3>\n<p>Pavyzdyje\u00a0len(\u00ablist\u00bb) yra naudojamas kartu su <code>range()<\/code>\u00a0 element\u0173 numeriams i\u0161vardinti.<\/p>\n<p><form class=\"pbform\" action=\"#\" id=\"pbform4\" method=\"POST\">\n<div class='pybox modeNeutral  facultative' id='pybox4'>\n<div class=\"heading\"><span class=\"title\">Example<\/span><\/div>Kaip gauti s\u0105ra\u0161o ilg\u012f ir panaudoti j\u012f s\u0105ra\u0161o perrinkimui.<div class='pyboxTextwrap pyboxCodewrap RO '  style='height: 110px;'><textarea wrap='off' name='usercode4' id='usercode4'  cols=10 rows=4 readonly='readonly'  style = 'height : 110px;'  class='pyboxCode RO'>\nmyList = [3, 12, \"pizza\", 3, 4]\nprint(\"myList ilgis:\", len(myList))\nfor i in range(0, len(myList)):\n  print(i, \"-tasis elementas:\", myList[i])<\/textarea><\/div>\n<div id='pbhistory4' class='flexcontain' style='display:none;'><\/div>\n<div class='pyboxbuttons'><table><tr>\n<td><input type='submit' name='submit' id='submit4' value=' '\/><\/td>\n<td><input type='button' name='consolecopy' value=\"Open in console\" onclick=\"pbConsoleCopy(4)\" ><\/td>\n<td><input type='button' name='visualize' value=\"Visualize\" onclick=\"pbVisualize(4,'N')\" ><\/td>\n<\/tr><\/table><\/div>\n<input type=\"hidden\" name=\"lang\" value=\"\"\/><input type=\"hidden\" id=\"inputInUse4\" name=\"inputInUse\" value=\"Y\"\/>\n<input type=\"hidden\" name=\"pyId\" value=\"4\"\/>\n<input type=\"hidden\" name=\"hash\" value=\"289934ba7e20485740461027429e56b7\"\/>\n<div id='pbresults4' class='pbresults'><\/div>\n<\/div>\n<\/form>\n<script type='text\/javascript'>document.getElementById(\"submit4\").value = \"Run program\";document.getElementById(\"inputInUse4\").value = \"N\";<\/script>\n<\/p>\n<p>Prisiminkime, kad range(\u00abprad\u017eia\u00bb, \u00abpabaiga\u00bb) generuoja sek\u0105 nuo \u00abprad\u017eia\u00bb iki \u00abpabaiga\u00bb-1 (t.y. pabaiga naudojama neimtinai).<\/p>\n<p>Pabandykite naudoti <code>len<\/code> s\u0105ra\u0161o viduriui rasti:<\/p>\n<p><form class=\"pbform\" action=\"#\" id=\"pbform5\" method=\"POST\">\n<div class='pybox modeNeutral ' id='pybox5'>\n<img title='You have not yet completed this problem.' src='https:\/\/cscircles.cemc.uwaterloo.ca\/dev\/wp-content\/plugins\/pybox\/files\/icon.png' class='pycheck'\/><div class=\"heading\"><span class='type'>Coding Exercise: <\/span><span class='title'>Aukso vidurys :)<\/span><\/div>Para\u0161ykite funkcij\u0105 <code>middle(L)<\/code> kuri kaip argument\u0105 gauna\u00a0s\u0105ra\u0161\u0105 <code>L<\/code>, ir gr\u0105\u017eina\u00a0<em>viduryje<\/em> esant\u012f element\u0105. (Tarkime, kad bus paduodamas nelyginio ilgio s\u0105ra\u0161as.) Pavyzd\u017eiui, i\u0161kviet\u0119 <code>middle([8, 0, 100, 12, 1])<\/code> tur\u0117tume gauti <code>100<\/code>.<div class=\"helpOuter\" style=\"display: none;\"><div class=\"helpInner\"><div style=\"text-align: center\">You need to create an account and log in to ask a question.<\/div><\/div><\/div><div class='pyboxTextwrap pyboxCodewrap RW resizy'  style='height: 526px;'><textarea wrap='off' name='usercode5' id='usercode5'  cols=10 rows=20   class='pyboxCode RW'>\ndef...\n# delete this comment and enter your code here\n<\/textarea><\/div>\n<div id='pbhistory5' class='flexcontain' style='display:none;'><\/div>\n<div name=\"pyinput\" id=\"pyinput5\">Enter testing statements like <code>print(myfunction(\"test argument\"))<\/code> below.<div class=\"pyboxTextwrap resizy\" style=\"height: 102px;\" ><textarea wrap=\"off\" name=\"userinput\" class=\"pyboxInput\" cols=10 rows=4><\/textarea><\/div><\/div>\n<input type='hidden' id='defaultCode5' value='def...\\n'><\/input>\n<div class='pyboxbuttons'><table><tr>\n<td><input type='submit' name='submit' id='submit5' value=' '\/><\/td>\n<td><input type='button' name='switch' id=\"switch5\" value=\"Input Switch\" onclick=\"pbInputSwitch(5,'Y')\" ><\/td>\n<td><input type='button' name='consolecopy' value=\"Open in console\" onclick=\"pbConsoleCopy(5)\" ><\/td>\n<td><input type='button' name='visualize' value=\"Visualize\" onclick=\"pbVisualize(5,'Y')\" ><\/td>\n<\/tr><\/table><select id='pbSelect5' class='selectmore'><option name='more'>More actions...<\/option>\n<option name='history' data-pbonclick=\"historyClick(5,'13.middle')\" >History<\/option>\n<option name='default' data-pbonclick=\"pbSetText(5,descape($('#defaultCode5').val()))\" >Reset code to default<\/option>\n<option name='help' data-pbonclick=\"helpClick(5);\" >Help<\/option>\n<\/select><\/div>\n<input type=\"hidden\" name=\"lang\" value=\"\"\/><input type=\"hidden\" id=\"inputInUse5\" name=\"inputInUse\" value=\"Y\"\/>\n<input type=\"hidden\" name=\"pyId\" value=\"5\"\/>\n<input type=\"hidden\" name=\"hash\" value=\"e43823754886697911a4de878a4fd0b6\"\/>\n<div id='pbresults5' class='pbresults avoidline'><\/div>\n<\/div>\n<\/form>\n<script type='text\/javascript'>jQuery(function(){pbToggleCodeMirror(5);});pbInputSwitch(5,\"Y\");<\/script>\n<\/p>\n<h3>Ar s\u0105ra\u0161ai yra pana\u0161\u016bs \u012f teksto eilutes\u00a0(string)?<\/h3>\n<p>Tikrai taip! Tekstas yra tarsi\u00a0simboli\u0173 s\u0105ra\u0161as.\u00a0Abiems naudojama\u00a0<code>len()<\/code> funkcija bei element\u0173 numeriai\u00a0<code>X[\u00abnr\u00bb]<\/code>. \u00a0\u00a0Abu jie yra numeruojamo\u00a0tipo duomenys (angl. \"<a href=\"http:\/\/docs.python.org\/py3k\/library\/stdtypes.html?highlight=sequence#sequence-types-str-bytes-bytearray-list-tuple-range\">sequence types<\/a>\"). BET, tekste\u00a0simboliai\u00a0negali b\u016bti kei\u010diami\u00a0pagal eil. nr.<\/p>\n<p><form class=\"pbform\" action=\"#\" id=\"pbform6\" method=\"POST\">\n<div class='pybox modeNeutral  facultative' id='pybox6'>\n<div class=\"heading\"><span class=\"title\">Example<\/span><\/div>Klaida, nes\u00a0teksto elementui\u00a0negalime priskirti reik\u0161m\u0117s.<div class='pyboxTextwrap pyboxCodewrap RO '  style='height: 84px;'><textarea wrap='off' name='usercode6' id='usercode6'  cols=10 rows=3 readonly='readonly'  style = 'height : 84px;'  class='pyboxCode RO'>\nword='slack'\nprint(word, word[1])\nword[1]='n'<\/textarea><\/div>\n<div id='pbhistory6' class='flexcontain' style='display:none;'><\/div>\n<div class='pyboxbuttons'><table><tr>\n<td><input type='submit' name='submit' id='submit6' value=' '\/><\/td>\n<td><input type='button' name='consolecopy' value=\"Open in console\" onclick=\"pbConsoleCopy(6)\" ><\/td>\n<td><input type='button' name='visualize' value=\"Visualize\" onclick=\"pbVisualize(6,'N')\" ><\/td>\n<\/tr><\/table><\/div>\n<input type=\"hidden\" name=\"lang\" value=\"\"\/><input type=\"hidden\" id=\"inputInUse6\" name=\"inputInUse\" value=\"Y\"\/>\n<input type=\"hidden\" name=\"pyId\" value=\"6\"\/>\n<input type=\"hidden\" name=\"hash\" value=\"071e91b26fabcbb7947f2acafc8ec3ec\"\/>\n<div id='pbresults6' class='pbresults'><\/div>\n<\/div>\n<\/form>\n<script type='text\/javascript'>document.getElementById(\"submit6\").value = \"Run program\";document.getElementById(\"inputInUse6\").value = \"N\";<\/script>\n<\/p>\n<p>D\u0117l \u0161ios prie\u017easties s\u0105ra\u0161ai yra vadinami\u00a0\"<em>mutable<\/em>\" (kintan\u010di\u0173 element\u0173), o\u00a0teksto eilut\u0117s\u00a0- \"<em>immutable<span style=\"font-style: normal;\">\"<\/span><\/em>\u00a0(nekintan\u010di\u0173 element\u0173) tipo sekom. Daugiau apie tai --17-toje pamokoje..<\/p>\n<h3>S\u0105ra\u0161\u0173 sud\u0117tis ir padauginimas<\/h3>\n<p>I\u0161 \u00a0<a href=\"\/7a-lt\/\">pamokos<\/a> apie <code>strint<\/code>\u00a0tip\u0105, prisimename, kad yra \u012fmanoma naudoti <code>+<\/code> \u017eenkl\u0105\u00a0dviej\u0173 tekst\u0173\u00a0sujungimui. T\u0105 pat\u012f galima daryti ir su s\u0105ra\u0161ais.<\/p>\n<p><form class=\"pbform\" action=\"#\" id=\"pbform7\" method=\"POST\">\n<div class='pybox modeNeutral  facultative' id='pybox7'>\n<div class=\"heading\"><span class=\"title\">Example<\/span><\/div>Dviej\u0173 s\u0105ra\u0161\u0173 sujungimas\u00a0naudojant <code>+<\/code>.<div class='pyboxTextwrap pyboxCodewrap RO '  style='height: 136px;'><textarea wrap='off' name='usercode7' id='usercode7'  cols=10 rows=5 readonly='readonly'  style = 'height : 136px;'  class='pyboxCode RO'>\nlistA = [3, 'go', 7.1]\nlistB = [4, 'hi', 1]\nlistC = listA + listB\nprint(len(listC))\nprint(listC)<\/textarea><\/div>\n<div id='pbhistory7' class='flexcontain' style='display:none;'><\/div>\n<div class='pyboxbuttons'><table><tr>\n<td><input type='submit' name='submit' id='submit7' value=' '\/><\/td>\n<td><input type='button' name='consolecopy' value=\"Open in console\" onclick=\"pbConsoleCopy(7)\" ><\/td>\n<td><input type='button' name='visualize' value=\"Visualize\" onclick=\"pbVisualize(7,'N')\" ><\/td>\n<\/tr><\/table><\/div>\n<input type=\"hidden\" name=\"lang\" value=\"\"\/><input type=\"hidden\" id=\"inputInUse7\" name=\"inputInUse\" value=\"Y\"\/>\n<input type=\"hidden\" name=\"pyId\" value=\"7\"\/>\n<input type=\"hidden\" name=\"hash\" value=\"9de0c01c5030f213b37d8ba3491ec8f8\"\/>\n<div id='pbresults7' class='pbresults'><\/div>\n<\/div>\n<\/form>\n<script type='text\/javascript'>document.getElementById(\"submit7\").value = \"Run program\";document.getElementById(\"inputInUse7\").value = \"N\";<\/script>\n<\/p>\n<p>Pana\u0161iai, galime naudoti daugyb\u0105<code>*<\/code>, kad padaugintume\u00a0s\u0105ra\u0161\u0105 (i\u0161vardintume jo elementus kelis kartus). Taip\u00a0patogu\u00a0sukurti norimo\u00a0ilgio s\u0105ra\u0161\u0105.<\/p>\n<p><form class=\"pbform\" action=\"#\" id=\"pbform8\" method=\"POST\">\n<div class='pybox modeNeutral  facultative' id='pybox8'>\n<div class=\"heading\"><span class=\"title\">Example<\/span><\/div>Using <code><code>*<\/code><\/code>.<div class='pyboxTextwrap pyboxCodewrap RO '  style='height: 110px;'><textarea wrap='off' name='usercode8' id='usercode8'  cols=10 rows=4 readonly='readonly'  style = 'height : 110px;'  class='pyboxCode RO'>\nmyPhoneNumber = [9, 6, 7] + [1]*4\nprint(myPhoneNumber)\nnewEmptyList = [0]*20\nprint(newEmptyList)<\/textarea><\/div>\n<div id='pbhistory8' class='flexcontain' style='display:none;'><\/div>\n<div class='pyboxbuttons'><table><tr>\n<td><input type='submit' name='submit' id='submit8' value=' '\/><\/td>\n<td><input type='button' name='consolecopy' value=\"Open in console\" onclick=\"pbConsoleCopy(8)\" ><\/td>\n<td><input type='button' name='visualize' value=\"Visualize\" onclick=\"pbVisualize(8,'N')\" ><\/td>\n<\/tr><\/table><\/div>\n<input type=\"hidden\" name=\"lang\" value=\"\"\/><input type=\"hidden\" id=\"inputInUse8\" name=\"inputInUse\" value=\"Y\"\/>\n<input type=\"hidden\" name=\"pyId\" value=\"8\"\/>\n<input type=\"hidden\" name=\"hash\" value=\"b3108d3ef8326dc1609d500870b8d584\"\/>\n<div id='pbresults8' class='pbresults'><\/div>\n<\/div>\n<\/form>\n<script type='text\/javascript'>document.getElementById(\"submit8\").value = \"Run program\";document.getElementById(\"inputInUse8\").value = \"N\";<\/script>\n<\/p>\n<p>Nor\u0117dami i\u0161spr\u0119sti tolimesn\u012f\u00a0u\u017edavin\u012f, panaudokite vien\u0105 i\u0161 parodyt\u0173 veiksm\u0173\u00a0ir <code>for<\/code> cikl\u0105.<\/p>\n<p><form class=\"pbform\" action=\"#\" id=\"pbform9\" method=\"POST\">\n<div class='pybox modeNeutral ' id='pybox9'>\n<img title='You have not yet completed this problem.' src='https:\/\/cscircles.cemc.uwaterloo.ca\/dev\/wp-content\/plugins\/pybox\/files\/icon.png' class='pycheck'\/><div class=\"heading\"><span class='type'>Coding Exercise: <\/span><span class='title'>Numeriai s\u0105ra\u0161e<\/span><\/div>Para\u0161ykite funkcij\u0105 <code>naturalNumbers<\/code> kuri gauna\u00a0teigiam\u0105 sveik\u0105 skai\u010di\u0173\u00a0<code>n<\/code> ir,\u00a0suk\u016brusi, gr\u0105\u017eina s\u0105ra\u0161\u0105 i\u0161 numeri\u0173 nuo 1 iki <code>n<\/code> (imtinai):\u00a0<code>[1, 2, ..., n]<\/code>.<div class=\"helpOuter\" style=\"display: none;\"><div class=\"helpInner\"><div style=\"text-align: center\">You need to create an account and log in to ask a question.<\/div><\/div><\/div><div class='pyboxTextwrap pyboxCodewrap RW resizy'  style='height: 526px;'><textarea wrap='off' name='usercode9' id='usercode9'  cols=10 rows=20   class='pyboxCode RW'>\n# delete this comment and enter your code here\n<\/textarea><\/div>\n<div id='pbhistory9' class='flexcontain' style='display:none;'><\/div>\n<div name=\"pyinput\" id=\"pyinput9\">Enter testing statements like <code>print(myfunction(\"test argument\"))<\/code> below.<div class=\"pyboxTextwrap resizy\" style=\"height: 102px;\" ><textarea wrap=\"off\" name=\"userinput\" class=\"pyboxInput\" cols=10 rows=4><\/textarea><\/div><\/div>\n<div class='pyboxbuttons'><table><tr>\n<td><input type='submit' name='submit' id='submit9' value=' '\/><\/td>\n<td><input type='button' name='switch' id=\"switch9\" value=\"Input Switch\" onclick=\"pbInputSwitch(9,'Y')\" ><\/td>\n<td><input type='button' name='consolecopy' value=\"Open in console\" onclick=\"pbConsoleCopy(9)\" ><\/td>\n<td><input type='button' name='visualize' value=\"Visualize\" onclick=\"pbVisualize(9,'Y')\" ><\/td>\n<\/tr><\/table><select id='pbSelect9' class='selectmore'><option name='more'>More actions...<\/option>\n<option name='history' data-pbonclick=\"historyClick(9,'13.natural')\" >History<\/option>\n<option name='help' data-pbonclick=\"helpClick(9);\" >Help<\/option>\n<\/select><\/div>\n<input type=\"hidden\" name=\"lang\" value=\"\"\/><input type=\"hidden\" id=\"inputInUse9\" name=\"inputInUse\" value=\"Y\"\/>\n<input type=\"hidden\" name=\"pyId\" value=\"9\"\/>\n<input type=\"hidden\" name=\"hash\" value=\"c9e0f51612c972e04c7b13d7ae0bc294\"\/>\n<div id='pbresults9' class='pbresults avoidline'><\/div>\n<\/div>\n<\/form>\n<script type='text\/javascript'>jQuery(function(){pbToggleCodeMirror(9);});pbInputSwitch(9,\"Y\");<\/script>\n<\/p>\n<h3>Eilut\u0117s pabaiga ir neigiami element\u0173 numeriai (indeksai)<\/h3>\n<p>Nor\u0117dami gauti paskutin\u012f s\u0105ra\u0161o element\u0105, naudokite<\/p>\n<p style=\"text-align: center;\"><code>\u00absarasas\u00bb[-1]<\/code><\/p>\n<p><code>L[-k]<\/code> gr\u0105\u017eina <code>k<\/code>-t\u0105j\u012f lement\u0105 nuo s\u0105ra\u0161o pabaigos. Pitonas \u0161i\u0105 i\u0161rai\u0161k\u0105 paver\u010dia\u00a0\u012f <code>L[len(L)-k]<\/code>. \u0160is trumpinys\u00a0veikia ir su\u00a0tekstu!<\/p>\n<p><form class=\"pbform\" action=\"#\" id=\"pbform10\" method=\"POST\">\n<div class='pybox modeNeutral ' id='pybox10'>\n<img title='You have not yet completed this problem.' src='https:\/\/cscircles.cemc.uwaterloo.ca\/dev\/wp-content\/plugins\/pybox\/files\/icon.png' class='pycheck'\/><div class=\"heading\"><span class='type'>Coding Exercise: <\/span><span class='title'>Palindromai<\/span><\/div> <em>Palindromas<\/em> tai \u017eodis, kuris vienodai skaitomas pirmyn ir atgal. Pavyzd\u017eiui \u017eodis,<\/p>\n<p style=\"text-align: center;\"><code>racecar<\/code><\/p>\n<p>yra palindromas. Para\u0161ykite funkcij\u0105 <code>isPalindrome(S)<\/code>, kuri paimt\u0173 tekst\u0105\u00a0<code>S<\/code>\u00a0ir gr\u0105\u017eint\u0173 <code>True<\/code> jei tai palindromas, o\u00a0<code>False<\/code> kitais atvejais.<div class=\"helpOuter\" style=\"display: none;\"><div class=\"helpInner\"><div style=\"text-align: center\">You need to create an account and log in to ask a question.<\/div><\/div><\/div><div class='pyboxTextwrap pyboxCodewrap RW resizy'  style='height: 526px;'><textarea wrap='off' name='usercode10' id='usercode10'  cols=10 rows=20   class='pyboxCode RW'>\n# delete this comment and enter your code here\n<\/textarea><\/div>\n<div id='pbhistory10' class='flexcontain' style='display:none;'><\/div>\n<div name=\"pyinput\" id=\"pyinput10\">Enter testing statements like <code>print(myfunction(\"test argument\"))<\/code> below.<div class=\"pyboxTextwrap resizy\" style=\"height: 102px;\" ><textarea wrap=\"off\" name=\"userinput\" class=\"pyboxInput\" cols=10 rows=4><\/textarea><\/div><\/div>\n<div class='pyboxbuttons'><table><tr>\n<td><input type='submit' name='submit' id='submit10' value=' '\/><\/td>\n<td><input type='button' name='switch' id=\"switch10\" value=\"Input Switch\" onclick=\"pbInputSwitch(10,'Y')\" ><\/td>\n<td><input type='button' name='consolecopy' value=\"Open in console\" onclick=\"pbConsoleCopy(10)\" ><\/td>\n<td><input type='button' name='visualize' value=\"Visualize\" onclick=\"pbVisualize(10,'Y')\" ><\/td>\n<\/tr><\/table><select id='pbSelect10' class='selectmore'><option name='more'>More actions...<\/option>\n<option name='history' data-pbonclick=\"historyClick(10,'13.palindrome')\" >History<\/option>\n<option name='help' data-pbonclick=\"helpClick(10);\" >Help<\/option>\n<\/select><\/div>\n<input type=\"hidden\" name=\"lang\" value=\"\"\/><input type=\"hidden\" id=\"inputInUse10\" name=\"inputInUse\" value=\"Y\"\/>\n<input type=\"hidden\" name=\"pyId\" value=\"10\"\/>\n<input type=\"hidden\" name=\"hash\" value=\"c89a699266bc8c63101cb84ecdbbd86d\"\/>\n<div id='pbresults10' class='pbresults avoidline'><\/div>\n<\/div>\n<\/form>\n<script type='text\/javascript'>jQuery(function(){pbToggleCodeMirror(10);});pbInputSwitch(10,\"Y\");<\/script>\n<\/p>\n<h3><code>max<\/code> ir<code>sum<\/code><\/h3>\n<p>Funkcija <code>max<\/code>, kaip mat\u0117me anks\u010diau, gra\u017eina did\u017eiausi\u0105 skai\u010di\u0173 s\u0105ra\u0161e. Pana\u0161iai, funkcija <code>sum(L)<\/code> gr\u0105\u017eina s\u0105ra\u0161e <code>L<\/code> esan\u010di\u0173 element\u0173 sum\u0105.<\/p>\n<p><form class=\"pbform\" action=\"#\" id=\"pbform11\" method=\"POST\">\n<div class='pybox modeNeutral  facultative' id='pybox11'>\n<div class=\"heading\"><span class=\"title\">Example<\/span><\/div> <div class='pyboxTextwrap pyboxCodewrap RO '  style='height: 84px;'><textarea wrap='off' name='usercode11' id='usercode11'  cols=10 rows=3 readonly='readonly'  style = 'height : 84px;'  class='pyboxCode RO'>\nlist = [3, 10, 4, 9, 0]\nprint(sum(list))\nprint(max(list))<\/textarea><\/div>\n<div id='pbhistory11' class='flexcontain' style='display:none;'><\/div>\n<div class='pyboxbuttons'><table><tr>\n<td><input type='submit' name='submit' id='submit11' value=' '\/><\/td>\n<td><input type='button' name='consolecopy' value=\"Open in console\" onclick=\"pbConsoleCopy(11)\" ><\/td>\n<td><input type='button' name='visualize' value=\"Visualize\" onclick=\"pbVisualize(11,'N')\" ><\/td>\n<\/tr><\/table><\/div>\n<input type=\"hidden\" name=\"lang\" value=\"\"\/><input type=\"hidden\" id=\"inputInUse11\" name=\"inputInUse\" value=\"Y\"\/>\n<input type=\"hidden\" name=\"pyId\" value=\"11\"\/>\n<input type=\"hidden\" name=\"hash\" value=\"8391f798f13bdcc5e3debef1c0636f8c\"\/>\n<div id='pbresults11' class='pbresults'><\/div>\n<\/div>\n<\/form>\n<script type='text\/javascript'>document.getElementById(\"submit11\").value = \"Run program\";document.getElementById(\"inputInUse11\").value = \"N\";<\/script>\n<\/p>\n<p><form class=\"pbform\" action=\"#\" id=\"pbform12\" method=\"POST\">\n<div class='pybox modeNeutral ' id='pybox12'>\n<img title='You have not yet completed this problem.' src='https:\/\/cscircles.cemc.uwaterloo.ca\/dev\/wp-content\/plugins\/pybox\/files\/icon.png' class='pycheck'\/><div class=\"heading\"><span class='type'>Coding Exercise: <\/span><span class='title'>S\u0105ra\u0161o sandauga<\/span><\/div>Apibr\u0117\u017ekite funkcij\u0105 <code>prod(L)<\/code>, kuri gr\u0105\u017eina s\u0105ra\u0161o \u00a0<code>L<\/code> element\u0173 sandaug\u0105 (angl. \u201eproduct of list\u201c).<div class=\"helpOuter\" style=\"display: none;\"><div class=\"helpInner\"><div style=\"text-align: center\">You need to create an account and log in to ask a question.<\/div><\/div><\/div><div class='pyboxTextwrap pyboxCodewrap RW resizy'  style='height: 526px;'><textarea wrap='off' name='usercode12' id='usercode12'  cols=10 rows=20   class='pyboxCode RW'>\n# delete this comment and enter your code here\n<\/textarea><\/div>\n<div id='pbhistory12' class='flexcontain' style='display:none;'><\/div>\n<div name=\"pyinput\" id=\"pyinput12\">Enter testing statements like <code>print(myfunction(\"test argument\"))<\/code> below.<div class=\"pyboxTextwrap resizy\" style=\"height: 102px;\" ><textarea wrap=\"off\" name=\"userinput\" class=\"pyboxInput\" cols=10 rows=4><\/textarea><\/div><\/div>\n<div class='pyboxbuttons'><table><tr>\n<td><input type='submit' name='submit' id='submit12' value=' '\/><\/td>\n<td><input type='button' name='switch' id=\"switch12\" value=\"Input Switch\" onclick=\"pbInputSwitch(12,'Y')\" ><\/td>\n<td><input type='button' name='consolecopy' value=\"Open in console\" onclick=\"pbConsoleCopy(12)\" ><\/td>\n<td><input type='button' name='visualize' value=\"Visualize\" onclick=\"pbVisualize(12,'Y')\" ><\/td>\n<\/tr><\/table><select id='pbSelect12' class='selectmore'><option name='more'>More actions...<\/option>\n<option name='history' data-pbonclick=\"historyClick(12,'13.product')\" >History<\/option>\n<option name='help' data-pbonclick=\"helpClick(12);\" >Help<\/option>\n<\/select><\/div>\n<input type=\"hidden\" name=\"lang\" value=\"\"\/><input type=\"hidden\" id=\"inputInUse12\" name=\"inputInUse\" value=\"Y\"\/>\n<input type=\"hidden\" name=\"pyId\" value=\"12\"\/>\n<input type=\"hidden\" name=\"hash\" value=\"65e4919dd750c44e60b4bd2c9c007c92\"\/>\n<div id='pbresults12' class='pbresults avoidline'><\/div>\n<\/div>\n<\/form>\n<script type='text\/javascript'>jQuery(function(){pbToggleCodeMirror(12);});pbInputSwitch(12,\"Y\");<\/script>\n<\/p>\n<h3>S\u0105ra\u0161o perrinkimas<\/h3>\n<p><em>\u201efor\u201c ciklo<\/em>\u00a0 tikslesn\u0117 reik\u0161m\u0117 angli\u0161kai b\u016bt\u0173 <em>\"for each\" <\/em>- jis i\u0161 eil\u0117s paima kiekvien\u0105 s\u0105ra\u0161o reik\u0161m\u0119 (prisiminkite <a href=\"\/7c-lt\/#B\">7c pamok\u0105<\/a>):<\/p>\n<pre>for x in Sar:\r\n \u00a0\u00abveiksmai, naudojantys x\u00bb<\/pre>Pirmiausia <code>x<\/code>-ui yra priskiriama pirmoji <code>Sar<\/code> reik\u0161m\u0117 ir atliekami veiksmai; tada <code>x<\/code>-ui yra priskiriama antroji <code>Sar<\/code> reik\u0161m\u0117 ir atliekami veiksmai. Ir t.t. visiems elementams. Senesn\u0117s programavimo kalbos (C, Paskalis) \u0161ios savyb\u0117s neturi, jose reikia naudoti indeksus.\u00a0 Bet taip u\u017era\u0161yti patogiau - palyginkite, kaip atrodo su indeksais - papildomai \u201eapkraunamas\u201c kodas:<\/p>\n<pre>for i in range(len(Sar)): \u00a0 # range() duoda sek\u0105 nuo 0 iki s\u0105ra\u0161o paskutinio elemento\r\n \u00a0x = Sar[i]\r\n \u00a0\u00abveiksmai, naudojantys x\u00bb<\/pre>Indeksai reikalingi tik tada, jei reikia pakeisti s\u0105ra\u0161o elementus, ta\u010diau tai b\u016bna ne itin da\u017enai (bei patogumui da\u017enai naudojama \"enumerate()\" funkcija).<\/p>\n<p>\u0160tai vaizdingas s\u0105ra\u0161o reik\u0161mi\u0173 perrinkimo ir atspausdinimo pavyzdys.<\/p>\n<p><iframe width='100%' height='480' frameborder='0' scrolling='no' src='https:\/\/cscircles.cemc.uwaterloo.ca\/dev\/wp-content\/plugins\/pybox\/OnlinePythonTutor3-cemc\/iframe-embed.html#code=message%3D%5B%27s%27%2C+%27o%27%2C+%27s%27%5D%0Afor+x+in+message%3A%0A++print%28x%29&cumulative=false&heapPrimitives=false&drawParentPointers=false&textReferences=false&showOnlyOutputs=false&py=3&curInstr=0&resizeContainer=true&highlightLines&width=400&rightStdout=1'><\/iframe><\/p>\n<p><form class=\"pbform\" action=\"#\" id=\"pbform13\" method=\"POST\">\n<div class='pybox modeNeutral ' id='pybox13'>\n<img title='You have not yet completed this problem.' src='https:\/\/cscircles.cemc.uwaterloo.ca\/dev\/wp-content\/plugins\/pybox\/files\/icon.png' class='pycheck'\/><div class=\"heading\"><span class='type'>Coding Exercise: <\/span><span class='title'><code>for <code>\u00abkintamasis\u00bb<\/code> in <code>\u00abs\u0105ra\u0161as\u00bb<\/code><\/code><\/span><\/div>Apibr\u0117\u017ekite funkcij\u0105 <code>prod(L)<\/code> taip pat kaip ir anks\u010diau, bet \u0161\u012f kart\u0105 ji tur\u0117t\u0173 naudoti naujo tipo cikl\u0105.<div class=\"helpOuter\" style=\"display: none;\"><div class=\"helpInner\"><div style=\"text-align: center\">You need to create an account and log in to ask a question.<\/div><\/div><\/div><div class='pyboxTextwrap pyboxCodewrap RW resizy'  style='height: 526px;'><textarea wrap='off' name='usercode13' id='usercode13'  cols=10 rows=20   class='pyboxCode RW'>\n# delete this comment and enter your code here\n<\/textarea><\/div>\n<div id='pbhistory13' class='flexcontain' style='display:none;'><\/div>\n<div name=\"pyinput\" id=\"pyinput13\">Enter testing statements like <code>print(myfunction(\"test argument\"))<\/code> below.<div class=\"pyboxTextwrap resizy\" style=\"height: 102px;\" ><textarea wrap=\"off\" name=\"userinput\" class=\"pyboxInput\" cols=10 rows=4><\/textarea><\/div><\/div>\n<div class='pyboxbuttons'><table><tr>\n<td><input type='submit' name='submit' id='submit13' value=' '\/><\/td>\n<td><input type='button' name='switch' id=\"switch13\" value=\"Input Switch\" onclick=\"pbInputSwitch(13,'Y')\" ><\/td>\n<td><input type='button' name='consolecopy' value=\"Open in console\" onclick=\"pbConsoleCopy(13)\" ><\/td>\n<td><input type='button' name='visualize' value=\"Visualize\" onclick=\"pbVisualize(13,'Y')\" ><\/td>\n<\/tr><\/table><select id='pbSelect13' class='selectmore'><option name='more'>More actions...<\/option>\n<option name='history' data-pbonclick=\"historyClick(13,'13.foreach')\" >History<\/option>\n<option name='help' data-pbonclick=\"helpClick(13);\" >Help<\/option>\n<\/select><\/div>\n<input type=\"hidden\" name=\"lang\" value=\"\"\/><input type=\"hidden\" id=\"inputInUse13\" name=\"inputInUse\" value=\"Y\"\/>\n<input type=\"hidden\" name=\"pyId\" value=\"13\"\/>\n<input type=\"hidden\" name=\"hash\" value=\"1681b7737996b5a90d86713b171ef3b4\"\/>\n<div id='pbresults13' class='pbresults avoidline'><\/div>\n<\/div>\n<\/form>\n<script type='text\/javascript'>jQuery(function(){pbToggleCodeMirror(13);});pbInputSwitch(13,\"Y\");<\/script>\n<\/p>\n<p>\"For each\" ciklai yra tinkami ir tekstui: pabandykite <code><a href=\"https:\/\/cscircles.cemc.uwaterloo.ca\/dev\/console\/?consolecode=for%20char%20in%20%22hello%22%3A%20print%28char%29\" target=\"_blank\">for char in \"hello\"<\/a><\/code>.<\/p>\n<p><em>Puiku! Galite keliauti \u012f kit\u0105 pamok\u0105, arba pabandyti papildom\u0105 u\u017eduot\u012f.<\/em><\/p>\n<hr \/>\n<p><div class='pybox modeNeutral' id='pybox14'>\n<img title='You have not yet completed this problem.' src='https:\/\/cscircles.cemc.uwaterloo.ca\/dev\/wp-content\/plugins\/pybox\/files\/icon.png' class='pycheck'\/><div class=\"heading\"><span class='type'>Short Answer Exercise: <\/span><span class='title'>Paslaptis<\/span><\/div>Su kokia <code>x<\/code> reik\u0161me <code>mystery(x)<\/code> patekt\u0173 \u012f nesibaigiant\u012f cikl\u0105?<\/p>\n<pre>def mystery(x):\r\n \u00a0a = [0, 4, 0, 3, 2]\r\n \u00a0while x &gt; 0:\r\n\tx = a[x]\r\n \u00a0return \"Done\"<\/pre><label for=\"pyShortAnswer14\">Your answer: <\/label><input type=\"text\" onkeypress=\"{if (event.keyCode==13) pbShortCheck(14)}\" id=\"pyShortAnswer14\"><div class=\"pyboxbuttons\"><input type=\"hidden\" name=\"type\" value=\"trimmableString\"\/><input type=\"hidden\" name=\"correct\" value=\"3\"\/><input type=\"hidden\" name=\"slug\" value=\"13.mystery\"\/><input type=\"hidden\" name=\"lang\" value=\"\"\/><input type='submit' style='margin:5px;' value='Check answer' onClick = 'pbShortCheck(14)'\/><\/div><div class=\"pbresults\" id=\"pyShortResults14\"><\/div><div class=\"epilogue\">Correct!<\/div><\/div>\n<p><form class=\"pbform\" action=\"#\" id=\"pbform15\" method=\"POST\">\n<div class='pybox modeNeutral scramble' id='pybox15'>\n<img title='You have not yet completed this problem.' src='https:\/\/cscircles.cemc.uwaterloo.ca\/dev\/wp-content\/plugins\/pybox\/files\/icon.png' class='pycheck'\/><div class=\"heading\"><span class='type'>Scramble Exercise: <\/span><span class='title'>Moda<\/span><\/div>Moda yra da\u017eniausiai s\u0105ra\u0161e pasitaikantis elementas. Pakeiskite program\u0105 taip, kad <code>mode(L)<\/code> teisingai rast\u0173 mod\u0105. Tarkime, kad <code>L<\/code> yra skai\u010di\u0173 nuo 0 iki 9 s\u0105ra\u0161as. (PS.:Tikrinimo duomenyse pasir\u016bpinta, kad tik vienas skai\u010dius b\u016bt\u0173 da\u017eniausiai pasikartojantis.) <ul class=\"pyscramble\" name=\"pyscramble\" id=\"pyscramble15\">\n <li class=\"pyscramble\">      return i<\/li>\n <li class=\"pyscramble\">  for i in range(0, 10):<\/li>\n <li class=\"pyscramble\">    if frequency[i]==max(frequency):<\/li>\n <li class=\"pyscramble\">  frequency = [0]*10<\/li>\n <li class=\"pyscramble\">def mode(L):<\/li>\n <li class=\"pyscramble\">    frequency[i] = frequency[i] + 1<\/li>\n <li class=\"pyscramble\">  for i in L:<\/li>\n<\/ul>\n<input type='hidden' id='usercode15' name='usercode15'\/>\n<div id='pbhistory15' class='flexcontain' style='display:none;'><\/div>\n<div class='pyboxbuttons'><table><tr>\n<td><input type='submit' name='submit' id='submit15' value=' '\/><\/td>\n<\/tr><\/table><\/div>\n<input type=\"hidden\" name=\"lang\" value=\"\"\/><input type=\"hidden\" id=\"inputInUse15\" name=\"inputInUse\" value=\"Y\"\/>\n<input type=\"hidden\" name=\"pyId\" value=\"15\"\/>\n<input type=\"hidden\" name=\"hash\" value=\"2a6bb087fee333e2f8dafa231e71f09b\"\/>\n<div id='pbresults15' class='pbresults'><\/div>\n<\/div>\n<\/form>\n<script type='text\/javascript'>document.getElementById(\"submit15\").value = \"Run program\";document.getElementById(\"inputInUse15\").value = \"N\";<\/script>\n<\/p>\n<h2>Rikiavimas bei paie\u0161ka s\u0105ra\u0161e<\/h2>\n<p>Tvarkant duomenis, rikiavimas ir paie\u0161ka yra vieni svarbiausi\u0173\/da\u017eniausi\u0173 veiksm\u0173.<\/p>\n<p>Paie\u0161k\u0105 galima atlikti, naudojant perrinkim\u0105, pvz:<\/p>\n<p><form class=\"pbform\" action=\"#\" id=\"pbform16\" method=\"POST\">\n<div class='pybox modeNeutral  facultative' id='pybox16'>\n<div class=\"heading\"><span class='type'>Example: <\/span><span class='title'>Paie\u0161kos algoritmas<\/span><\/div> <div class='pyboxTextwrap pyboxCodewrap RO '  style='height: 136px;'><textarea wrap='off' name='usercode16' id='usercode16'  cols=10 rows=5 readonly='readonly'  style = 'height : 136px;'  class='pyboxCode RO'>\nSar = [10, 12, 15, 13, 20, 8, 12]\nieskoma = 12\nfor x in Sar:\n  if x == ieskoma:\n      print( \"radau\", ieskoma )<\/textarea><\/div>\n<div id='pbhistory16' class='flexcontain' style='display:none;'><\/div>\n<div class='pyboxbuttons'><table><tr>\n<td><input type='submit' name='submit' id='submit16' value=' '\/><\/td>\n<td><input type='button' name='consolecopy' value=\"Open in console\" onclick=\"pbConsoleCopy(16)\" ><\/td>\n<td><input type='button' name='visualize' value=\"Visualize\" onclick=\"pbVisualize(16,'N')\" ><\/td>\n<\/tr><\/table><\/div>\n<input type=\"hidden\" name=\"lang\" value=\"\"\/><input type=\"hidden\" id=\"inputInUse16\" name=\"inputInUse\" value=\"Y\"\/>\n<input type=\"hidden\" name=\"pyId\" value=\"16\"\/>\n<input type=\"hidden\" name=\"hash\" value=\"e925cd3f008637ca6d6390c3a9629614\"\/>\n<div id='pbresults16' class='pbresults'><\/div>\n<\/div>\n<\/form>\n<script type='text\/javascript'>document.getElementById(\"submit16\").value = \"Run program\";document.getElementById(\"inputInUse16\").value = \"N\";<\/script>\n<\/p>\n<p>Ta\u010diau Python leid\u017eia tai u\u017era\u0161yti trumpiau - kaip s\u0105lyg\u0105\u00a0 <code>\u00abieskoma\u00bb in \u00abSar\u00bb<\/code>, kuri gr\u0105\u017eins True\/False:<\/p>\n<p><form class=\"pbform\" action=\"#\" id=\"pbform17\" method=\"POST\">\n<div class='pybox modeNeutral  facultative' id='pybox17'>\n<div class=\"heading\"><span class='type'>Example: <\/span><span class='title'>Trumpas paie\u0161kos u\u017era\u0161as<\/span><\/div><div class='pyboxTextwrap pyboxCodewrap RO '  style='height: 136px;'><textarea wrap='off' name='usercode17' id='usercode17'  cols=10 rows=5 readonly='readonly'  style = 'height : 136px;'  class='pyboxCode RO'>\nSar = [10, 12, 15, 13, 20, 8, 12]\nif 13 in Sar:\n   print(\"radau!\")\nprint( 15 in Sar )  # bus  True\nprint( 16 in Sar )  # bus  False<\/textarea><\/div>\n<div id='pbhistory17' class='flexcontain' style='display:none;'><\/div>\n<div class='pyboxbuttons'><table><tr>\n<td><input type='submit' name='submit' id='submit17' value=' '\/><\/td>\n<td><input type='button' name='consolecopy' value=\"Open in console\" onclick=\"pbConsoleCopy(17)\" ><\/td>\n<td><input type='button' name='visualize' value=\"Visualize\" onclick=\"pbVisualize(17,'N')\" ><\/td>\n<\/tr><\/table><\/div>\n<input type=\"hidden\" name=\"lang\" value=\"\"\/><input type=\"hidden\" id=\"inputInUse17\" name=\"inputInUse\" value=\"Y\"\/>\n<input type=\"hidden\" name=\"pyId\" value=\"17\"\/>\n<input type=\"hidden\" name=\"hash\" value=\"8a15977e67796a0f395c99e47fedf376\"\/>\n<div id='pbresults17' class='pbresults'><\/div>\n<\/div>\n<\/form>\n<script type='text\/javascript'>document.getElementById(\"submit17\").value = \"Run program\";document.getElementById(\"inputInUse17\").value = \"N\";<\/script>\n<\/p>\n<p>Naudojant komand\u0105 <code>index()<\/code>, galima su\u017einoti, kurioje vietoje (kelintas) s\u0105ra\u0161e yra ie\u0161komas elementas:<\/p>\n<p><form class=\"pbform\" action=\"#\" id=\"pbform18\" method=\"POST\">\n<div class='pybox modeNeutral  facultative' id='pybox18'>\n<div class=\"heading\"><span class='type'>Example: <\/span><span class='title'>Ie\u0161komo elemento numeris<\/span><\/div><div class='pyboxTextwrap pyboxCodewrap RO '  style='height: 110px;'><textarea wrap='off' name='usercode18' id='usercode18'  cols=10 rows=4 readonly='readonly'  style = 'height : 110px;'  class='pyboxCode RO'>\nSar = [10, 12, 15, 13, 20, 8, 12]\nprint( Sar.index( 13 ) )\nprint( Sar.index( 12 ) )  # gr\u0105\u017eina pirmiausiai rasto elemento numer\u012f (nors yra 2 tinkantys elementai)\nprint( Sar.index( 16) )  # neradus ie\u0161komos reik\u0161m\u0117s, nutiks klaida<\/textarea><\/div>\n<div id='pbhistory18' class='flexcontain' style='display:none;'><\/div>\n<div class='pyboxbuttons'><table><tr>\n<td><input type='submit' name='submit' id='submit18' value=' '\/><\/td>\n<td><input type='button' name='consolecopy' value=\"Open in console\" onclick=\"pbConsoleCopy(18)\" ><\/td>\n<td><input type='button' name='visualize' value=\"Visualize\" onclick=\"pbVisualize(18,'N')\" ><\/td>\n<\/tr><\/table><\/div>\n<input type=\"hidden\" name=\"lang\" value=\"\"\/><input type=\"hidden\" id=\"inputInUse18\" name=\"inputInUse\" value=\"Y\"\/>\n<input type=\"hidden\" name=\"pyId\" value=\"18\"\/>\n<input type=\"hidden\" name=\"hash\" value=\"6137922620a605bdfbbc307c512d555e\"\/>\n<div id='pbresults18' class='pbresults'><\/div>\n<\/div>\n<\/form>\n<script type='text\/javascript'>document.getElementById(\"submit18\").value = \"Run program\";document.getElementById(\"inputInUse18\").value = \"N\";<\/script>\n<\/p>\n<p>Naudojant komand\u0105\u00a0 <code>count( )<\/code>, galima su\u017einoti, kiek kart\u0173 tam tikra reik\u0161m\u0117 kartojasi s\u0105ra\u0161e.<br \/>\n<form class=\"pbform\" action=\"#\" id=\"pbform19\" method=\"POST\">\n<div class='pybox modeNeutral  facultative' id='pybox19'>\n<div class=\"heading\"><span class='type'>Example: <\/span><span class='title'>Kiek kart\u0173 kartojasi?<\/span><\/div><div class='pyboxTextwrap pyboxCodewrap RO '  style='height: 110px;'><textarea wrap='off' name='usercode19' id='usercode19'  cols=10 rows=4 readonly='readonly'  style = 'height : 110px;'  class='pyboxCode RO'>\nSar = [10, 12, 15, 13, 20, 8, 12]\nprint( Sar.count( 12 ) )\nprint( Sar.count( 13 ) )\nprint( Sar.count( 14 ) )<\/textarea><\/div>\n<div id='pbhistory19' class='flexcontain' style='display:none;'><\/div>\n<div class='pyboxbuttons'><table><tr>\n<td><input type='submit' name='submit' id='submit19' value=' '\/><\/td>\n<td><input type='button' name='consolecopy' value=\"Open in console\" onclick=\"pbConsoleCopy(19)\" ><\/td>\n<td><input type='button' name='visualize' value=\"Visualize\" onclick=\"pbVisualize(19,'N')\" ><\/td>\n<\/tr><\/table><\/div>\n<input type=\"hidden\" name=\"lang\" value=\"\"\/><input type=\"hidden\" id=\"inputInUse19\" name=\"inputInUse\" value=\"Y\"\/>\n<input type=\"hidden\" name=\"pyId\" value=\"19\"\/>\n<input type=\"hidden\" name=\"hash\" value=\"8337a238e2ffec72aaa953799a1f2b06\"\/>\n<div id='pbresults19' class='pbresults'><\/div>\n<\/div>\n<\/form>\n<script type='text\/javascript'>document.getElementById(\"submit19\").value = \"Run program\";document.getElementById(\"inputInUse19\").value = \"N\";<\/script>\n<\/p>\n<p>S\u0105ra\u0161\u0173 <strong>rikiavimas<\/strong> yra plati programavimo tema (tam reikia naudoti cikl\u0105 cikle), bet Python turi paruo\u0161tus algoritmus, kurie i\u0161kvie\u010diami viena eilute:<br \/>\n<form class=\"pbform\" action=\"#\" id=\"pbform20\" method=\"POST\">\n<div class='pybox modeNeutral  facultative' id='pybox20'>\n<div class=\"heading\"><span class='type'>Example: <\/span><span class='title'>S\u0105ra\u0161o rikiavimas<\/span><\/div><div class='pyboxTextwrap pyboxCodewrap RO '  style='height: 136px;'><textarea wrap='off' name='usercode20' id='usercode20'  cols=10 rows=5 readonly='readonly'  style = 'height : 136px;'  class='pyboxCode RO'>\nSar = [100, 12, 5, 13, 200, 8, 12]\nSar.sort()  # i\u0161rikiuoja\nprint(Sar)\nSar.sort(reverse=True)  # i\u0161rikiuoja ma\u017e\u0117jimo tvarka\nprint(Sar)<\/textarea><\/div>\n<div id='pbhistory20' class='flexcontain' style='display:none;'><\/div>\n<div class='pyboxbuttons'><table><tr>\n<td><input type='submit' name='submit' id='submit20' value=' '\/><\/td>\n<td><input type='button' name='consolecopy' value=\"Open in console\" onclick=\"pbConsoleCopy(20)\" ><\/td>\n<td><input type='button' name='visualize' value=\"Visualize\" onclick=\"pbVisualize(20,'N')\" ><\/td>\n<\/tr><\/table><\/div>\n<input type=\"hidden\" name=\"lang\" value=\"\"\/><input type=\"hidden\" id=\"inputInUse20\" name=\"inputInUse\" value=\"Y\"\/>\n<input type=\"hidden\" name=\"pyId\" value=\"20\"\/>\n<input type=\"hidden\" name=\"hash\" value=\"b2c777b20ac4c948c798a07c9c860db9\"\/>\n<div id='pbresults20' class='pbresults'><\/div>\n<\/div>\n<\/form>\n<script type='text\/javascript'>document.getElementById(\"submit20\").value = \"Run program\";document.getElementById(\"inputInUse20\").value = \"N\";<\/script>\n<\/p>\n<p><a name=\"matrix\"><\/a><br\/><\/p>\n<h2>Matricos - s\u0105ra\u0161ai i\u0161 s\u0105ra\u0161\u0173<\/h2>\n<p>Da\u017enai duomen\u0173 saugojimui ir analizei naudojamos matricos (lentel\u0117s). Tai yra tiesiog s\u0105ra\u0161as i\u0161 s\u0105ra\u0161\u0173:<\/p>\n<p><form class=\"pbform\" action=\"#\" id=\"pbform21\" method=\"POST\">\n<div class='pybox modeNeutral  facultative' id='pybox21'>\n<div class=\"heading\"><span class='type'>Example: <\/span><span class='title'>Matrica<\/span><\/div>Turime matricoje duomenis apie mokini\u0173 pa\u017eangum\u0105. Kiekvienam suskai\u010duojame vidurk\u012f ir nustatome ar jis pakankamai pa\u017eangus:<div class='pyboxTextwrap pyboxCodewrap RO '  style='height: 396px;'><textarea wrap='off' name='usercode21' id='usercode21'  cols=10 rows=15 readonly='readonly'  style = 'height : 396px;'  class='pyboxCode RO'>\nPazymiai = [\n  ['Tomas', 10, 6, 8],\n  ['Petras', 2, 2, 2],\n  ['Antanas', 10, 10, 2],\n  ['Jurgis', 10, 10]\n]  \nfor eilute in Pazymiai:\n  vardas = eilute[0]\n  skaiciai = eilute[1:] # imam atkarp\u0105 nuo pirmo elemento (nulinio neimam)\n  vidurkis = sum(skaiciai) \/ len(skaiciai)\n  if vidurkis &gt; 4 and min(skaiciai) &gt; 2: #jei vidurkis ir pa\u017eymiai paken\u010diami\n    rez = 'OK'\n  else:\n    rez = 'B\u0116DA'\n  print(vardas, vidurkis, rez)<\/textarea><\/div>\n<div id='pbhistory21' class='flexcontain' style='display:none;'><\/div>\n<div class='pyboxbuttons'><table><tr>\n<td><input type='submit' name='submit' id='submit21' value=' '\/><\/td>\n<td><input type='button' name='consolecopy' value=\"Open in console\" onclick=\"pbConsoleCopy(21)\" ><\/td>\n<td><input type='button' name='visualize' value=\"Visualize\" onclick=\"pbVisualize(21,'N')\" ><\/td>\n<\/tr><\/table><\/div>\n<input type=\"hidden\" name=\"lang\" value=\"\"\/><input type=\"hidden\" id=\"inputInUse21\" name=\"inputInUse\" value=\"Y\"\/>\n<input type=\"hidden\" name=\"pyId\" value=\"21\"\/>\n<input type=\"hidden\" name=\"hash\" value=\"9124d4bc51624a032bc6ec002c4f8d20\"\/>\n<div id='pbresults21' class='pbresults'><\/div>\n<\/div>\n<\/form>\n<script type='text\/javascript'>document.getElementById(\"submit21\").value = \"Run program\";document.getElementById(\"inputInUse21\").value = \"N\";<\/script>\n<\/p>\n<p>Kad geriau suprastum\u0117te, i\u0161bandykite pavyzd\u012f su \"veiksm\u0173 sekimu\" ;).<\/p>\n<p>Kaip matome, matric\u0105 patogu nagrin\u0117ti eilut\u0117mis. Bet kuri\u0105 eilut\u0119 galima pasiekti pagal numer\u012f: <code>Pazymiai[0]<\/code>, <code>Pazymiai[1]<\/code> ir t.t. O eilut\u0117je galima pasiekti bet kur\u012f jos element\u0105, pvz., <code>Pazymiai<strong>[2][0]<\/strong><\/code> yra reik\u0161m\u0117 <code>\"Antanas\"<\/code>.<\/p>\n<p><a name=\"dict\"><\/a><br\/><\/p>\n<h2>\u017dodynai (dictionary)<\/h2>\n<p>Kita da\u017enai praver\u010dianti duomen\u0173 strukt\u016bra yra <em><a href=\"http:\/\/galvosukykla.lt\/failai\/\/mokymas\/programavimas\/python\/vadovelis\/py2\/intro.ds2.dict.html\">\u017eodynai<\/a>\u00a0<\/em>(\"dictionary\") -- kitose kalbose vadinami <em>atvaizdavimais<\/em> (\"map\"). Juose reik\u0161m\u0117s saugomos susietos poromis - pagal rakt\u0105 (angl. \"key\") galima su\u017einoti\u00a0jam priskirt\u0105 reik\u0161m\u0119 (angl. \"value\") - kaip ir tikram \u017eodyne. Programos\u00a0kintamuosius Pythone irgi galima pasiekti kaip \u017eodynus -- naudojant\u00a0komandas\u00a0<em>locals()<\/em>\u00a0ir <em>globals()<\/em>. \u017dodyno poros i\u0161vardinamos tarp riestini\u0173 skliaust\u0173 <code><strong>{ }<\/strong><\/code>, o pora susiejama dvita\u0161kiu, pvz<\/p>\n<pre>asmens_info = {\"vardas\":\"Petras\", \u00a0\"miestas\":\"NewYork\", \"amzius\":21 }<\/pre>\u017dodyne reik\u0161m\u0117s saugomos ne i\u0161 eil\u0117s, o Python'ui patogia\u00a0 tvarka - kad gal\u0117t\u0173 <span style=\"text-decoration: underline;\">kuo grei\u010diau<\/span> rasti reik\u0161m\u0119 pagal nurodyt\u0105 rakt\u0105.\u00a0 \u017dodyne naujo reik\u0161m\u0117s (rakto) prid\u0117jimas atrodo taip pat, kaip jau esan\u010dio pakeitimas, pvz:<\/p>\n<pre>asmens_info[\"turtas\"] = 99000\r\nasmens_info[\"miestas\"] = \"Kaunas\"<\/pre><code><\/code><form class=\"pbform\" action=\"#\" id=\"pbform22\" method=\"POST\">\n<div class='pybox modeNeutral  facultative' id='pybox22'>\n<div class=\"heading\"><span class='type'>Example: <\/span><span class='title'>Virtuali parduotuv\u0117<\/span><\/div>  <div class='pyboxTextwrap pyboxCodewrap RO '  style='height: 578px;'><textarea wrap='off' name='usercode22' id='usercode22'  cols=10 rows=22 readonly='readonly'  style = 'height : 578px;'  class='pyboxCode RO'>\nkainos = {'bulv\u0117s': 1.5, 'morkos': 2 } # preki\u0173 katalogas\nprint('Student\u0173 pagrindinis maistas kainuoja', kainos['bulv\u0117s'], 'Lt')\nkainos['kefyras'] = 3  # papildome nauja informacija - taip pat galime pakeisti esan\u010di\u0105 reik\u0161m\u0119\n#  \u017eodyn\u0105 galima perrinkti pagal rakt\u0105\nfor kas in kainos:\n  print( kas, 'kainuoja', kainos[kas])\n\nprint('I\u0161 viso yra', len(kainos), 'prek\u0117s.')\nprint() # tu\u0161\u010dia eilut\u0117\n\npirkiniai = {'bulv\u0117s': 10, 'duona': 2, 'kefyras': 5, 'pienas':0.5 } # kitas \u017eodynas - ko ir kiek reikia\nsuma  = 0\n#  kartais patogiau perrinkti raktas-reik\u0161m\u0117 poromis\nfor ko_nori, kiek_paimt in pirkiniai.items():\n  if ko_nori in kainos:  # jeigu yra parduotuv\u0117je -- tikrinam pagal rakt\u0105\n       tarpine_suma = kainos[ko_nori] * kiek_paimt\n       print( kiek_paimt, ko_nori, 'kainuoja', tarpine_suma )\n       suma += tarpine_suma\n  else:\n       print( ko_nori, 'n\u0117ra parduotuv\u0117je' )\nprint('--------------------------')\nprint( 'I\u0161leidom:', suma, 'Lt' )<\/textarea><\/div>\n<div id='pbhistory22' class='flexcontain' style='display:none;'><\/div>\n<div class='pyboxbuttons'><table><tr>\n<td><input type='submit' name='submit' id='submit22' value=' '\/><\/td>\n<td><input type='button' name='consolecopy' value=\"Open in console\" onclick=\"pbConsoleCopy(22)\" ><\/td>\n<td><input type='button' name='visualize' value=\"Visualize\" onclick=\"pbVisualize(22,'N')\" ><\/td>\n<\/tr><\/table><\/div>\n<input type=\"hidden\" name=\"lang\" value=\"\"\/><input type=\"hidden\" id=\"inputInUse22\" name=\"inputInUse\" value=\"Y\"\/>\n<input type=\"hidden\" name=\"pyId\" value=\"22\"\/>\n<input type=\"hidden\" name=\"hash\" value=\"051e58724c63ca3aa5ad2e87e5489032\"\/>\n<div id='pbresults22' class='pbresults'><\/div>\n<\/div>\n<\/form>\n<script type='text\/javascript'>document.getElementById(\"submit22\").value = \"Run program\";document.getElementById(\"inputInUse22\").value = \"N\";<\/script>\n<\/p>\n<p>Kad geriau suprastum\u0117te, si\u016blome naudoti\u00a0 \"veiksm\u0173 sekim\u0105\".<\/p>\n<p><form class=\"pbform\" action=\"#\" id=\"pbform23\" method=\"POST\">\n<div class='pybox modeNeutral  facultative' id='pybox23'>\n<div class=\"heading\"><span class='type'>Example: <\/span><span class='title'>alternatyvi \u017eodyno suk\u016brimo sintaks\u0117<\/span><\/div>Kartais \u017eodyn\u0105 patogiau sukurti taip (jei raktai yra paprasti \u017eod\u017eiai): <div class='pyboxTextwrap pyboxCodewrap RO '  style='height: 58px;'><textarea wrap='off' name='usercode23' id='usercode23'  cols=10 rows=2 readonly='readonly'  style = 'height : 58px;'  class='pyboxCode RO'>\npirkiniai=dict(bulves=10, duona=2, kefyras=5)\nprint('pirkiniai', pirkiniai)<\/textarea><\/div>\n<div id='pbhistory23' class='flexcontain' style='display:none;'><\/div>\n<div class='pyboxbuttons'><table><tr>\n<td><input type='submit' name='submit' id='submit23' value=' '\/><\/td>\n<td><input type='button' name='consolecopy' value=\"Open in console\" onclick=\"pbConsoleCopy(23)\" ><\/td>\n<td><input type='button' name='visualize' value=\"Visualize\" onclick=\"pbVisualize(23,'N')\" ><\/td>\n<\/tr><\/table><\/div>\n<input type=\"hidden\" name=\"lang\" value=\"\"\/><input type=\"hidden\" id=\"inputInUse23\" name=\"inputInUse\" value=\"Y\"\/>\n<input type=\"hidden\" name=\"pyId\" value=\"23\"\/>\n<input type=\"hidden\" name=\"hash\" value=\"6c76767bcaf88fccd2fa3d6953e4cfb9\"\/>\n<div id='pbresults23' class='pbresults'><\/div>\n<\/div>\n<\/form>\n<script type='text\/javascript'>document.getElementById(\"submit23\").value = \"Run program\";document.getElementById(\"inputInUse23\").value = \"N\";<\/script>\n<\/p>\n<p>S\u0105ra\u0161as i\u0161 \u017eodyn\u0173 (pana\u0161iai, kaip matrica) gali b\u016bt naudojamas duomen\u0173 baz\u0117s informacijai saugoti\/pateikti (raktus naudojant kaip stulpeli\u0173 pavadinimus) - taip elgiasi NoSQL duombaz\u0117s (kai n\u0117ra fiksuotos lenteli\u0173 strukt\u016bros). O rimtiems duomen\u0173 tvarkymams dabar da\u017eniausiai naudojamas <a href=\"http:\/\/pandas.pydata.org\/\">Pandas<\/a> paketas.<\/p>\n<p>Interneto svetain\u0117se siun\u010diami duomenys da\u017enai koduojami JSON formatu - jame\u00a0naudojami\u00a0s\u0105ra\u0161ai ir \u017eodynai, kurie atrodo\u00a0analogi\u0161kai kaip\u00a0Python'e.<\/p>\n<h2>Aib\u0117s (set)<\/h2>\n<p>Aib\u0117s \u0161iek tiek pana\u0161ios \u012f \u017eodynus -- jose nesvarbi eil\u0117s tvarka ir kiekvienas elementas yra pamin\u0117tas tik vien\u0105 kart\u0105.\u00a0Su jom galima atlikti matematinius aibi\u0173 sankirtos, s\u0105jungos ir skirtumo veiksmus<\/p>\n<pre>A = set('abracadabra') # set(['a', 'r', 'b', 'c', 'd'])\r\nB = set('alacazam') # set(['a', 'l', 'c', 'z', 'm'])\r\nA &amp; B # set(['a', 'c']) -- sankirta (elementai, kurie yra abiejose aib\u0117se)\r\nA - B # set(['r', 'd', 'b'])  -- skirtumas\r\nA | B # set(['a', 'c', 'b', 'd', 'm', 'l', 'r', 'z'])  -- s\u0105junga (visi elementai i\u0161 abiej\u0173 aibi\u0173)<\/pre><a name=\"tips\"><\/a><br \/>\n<br\/><\/p>\n<h2>Patogios smulkmenos duomen\u0173 strukt\u016broms<\/h2>\n<p>\u012ev. duomen\u0173 perrinkimas yra da\u017ena u\u017eduotis, tod\u0117l Python'e yra pasistengta, kad tai b\u016bt\u0173 galima kuo trumpiau ir ai\u0161kiau u\u017era\u0161yti.<\/p>\n<p><form class=\"pbform\" action=\"#\" id=\"pbform24\" method=\"POST\">\n<div class='pybox modeNeutral  facultative' id='pybox24'>\n<div class=\"heading\"><span class='type'>Example: <\/span><span class='title'>enumerate -- s\u0105ra\u0161o elementai su numeriais<\/span><\/div><div class='pyboxTextwrap pyboxCodewrap RO '  style='height: 84px;'><textarea wrap='off' name='usercode24' id='usercode24'  cols=10 rows=3 readonly='readonly'  style = 'height : 84px;'  class='pyboxCode RO'>\nvardai=[\"Jurgis\", \"Antanas\", \"Aloyzas\", \"Martynas\"]\nfor nr, vardas in enumerate(vardai): \n     print(nr, vardas)<\/textarea><\/div>\n<div id='pbhistory24' class='flexcontain' style='display:none;'><\/div>\n<div class='pyboxbuttons'><table><tr>\n<td><input type='submit' name='submit' id='submit24' value=' '\/><\/td>\n<td><input type='button' name='consolecopy' value=\"Open in console\" onclick=\"pbConsoleCopy(24)\" ><\/td>\n<td><input type='button' name='visualize' value=\"Visualize\" onclick=\"pbVisualize(24,'N')\" ><\/td>\n<\/tr><\/table><\/div>\n<input type=\"hidden\" name=\"lang\" value=\"\"\/><input type=\"hidden\" id=\"inputInUse24\" name=\"inputInUse\" value=\"Y\"\/>\n<input type=\"hidden\" name=\"pyId\" value=\"24\"\/>\n<input type=\"hidden\" name=\"hash\" value=\"c42837d32233098bcea1c71b85e7015e\"\/>\n<div id='pbresults24' class='pbresults'><\/div>\n<\/div>\n<\/form>\n<script type='text\/javascript'>document.getElementById(\"submit24\").value = \"Run program\";document.getElementById(\"inputInUse24\").value = \"N\";<\/script>\n<\/p>\n<p><form class=\"pbform\" action=\"#\" id=\"pbform25\" method=\"POST\">\n<div class='pybox modeNeutral  facultative' id='pybox25'>\n<div class=\"heading\"><span class='type'>Example: <\/span><span class='title'>zip -- keli\u0173 s\u0105ra\u0161\u0173 lygiagretus perrinkimas<\/span><\/div><div class='pyboxTextwrap pyboxCodewrap RO '  style='height: 110px;'><textarea wrap='off' name='usercode25' id='usercode25'  cols=10 rows=4 readonly='readonly'  style = 'height : 110px;'  class='pyboxCode RO'>\nvardai=[\"Jurgis\", \"Antanas\", \"Aloyzas\", \"Martynas\"]\nturtai = [100, 13, 200, 665]\nfor kas, kiek in zip(vardai, turtai): \n     print(kas, \"turi\", kiek, \"Lt\")<\/textarea><\/div>\n<div id='pbhistory25' class='flexcontain' style='display:none;'><\/div>\n<div class='pyboxbuttons'><table><tr>\n<td><input type='submit' name='submit' id='submit25' value=' '\/><\/td>\n<td><input type='button' name='consolecopy' value=\"Open in console\" onclick=\"pbConsoleCopy(25)\" ><\/td>\n<td><input type='button' name='visualize' value=\"Visualize\" onclick=\"pbVisualize(25,'N')\" ><\/td>\n<\/tr><\/table><\/div>\n<input type=\"hidden\" name=\"lang\" value=\"\"\/><input type=\"hidden\" id=\"inputInUse25\" name=\"inputInUse\" value=\"Y\"\/>\n<input type=\"hidden\" name=\"pyId\" value=\"25\"\/>\n<input type=\"hidden\" name=\"hash\" value=\"cd479b241abd9121c962e32c02ec21b6\"\/>\n<div id='pbresults25' class='pbresults'><\/div>\n<\/div>\n<\/form>\n<script type='text\/javascript'>document.getElementById(\"submit25\").value = \"Run program\";document.getElementById(\"inputInUse25\").value = \"N\";<\/script>\n<\/p>\n<p><form class=\"pbform\" action=\"#\" id=\"pbform26\" method=\"POST\">\n<div class='pybox modeNeutral  facultative' id='pybox26'>\n<div class=\"heading\"><span class='type'>Example: <\/span><span class='title'>zip -- 2 s\u0105ra\u0161\u0173 supakavimas \u012f \u017eodyn\u0105<\/span><\/div><div class='pyboxTextwrap pyboxCodewrap RO '  style='height: 110px;'><textarea wrap='off' name='usercode26' id='usercode26'  cols=10 rows=4 readonly='readonly'  style = 'height : 110px;'  class='pyboxCode RO'>\nvardai=[\"Jurgis\", \"Antanas\", \"Aloyzas\", \"Martynas\"]\nturtai = [100, 13, 200, 665]\nturtai_pagal_vardus = dict(zip(vardai, turtai))\nprint(turtai_pagal_vardus)<\/textarea><\/div>\n<div id='pbhistory26' class='flexcontain' style='display:none;'><\/div>\n<div class='pyboxbuttons'><table><tr>\n<td><input type='submit' name='submit' id='submit26' value=' '\/><\/td>\n<td><input type='button' name='consolecopy' value=\"Open in console\" onclick=\"pbConsoleCopy(26)\" ><\/td>\n<td><input type='button' name='visualize' value=\"Visualize\" onclick=\"pbVisualize(26,'N')\" ><\/td>\n<\/tr><\/table><\/div>\n<input type=\"hidden\" name=\"lang\" value=\"\"\/><input type=\"hidden\" id=\"inputInUse26\" name=\"inputInUse\" value=\"Y\"\/>\n<input type=\"hidden\" name=\"pyId\" value=\"26\"\/>\n<input type=\"hidden\" name=\"hash\" value=\"61aeaabeae0bdd6078a539621175bf11\"\/>\n<div id='pbresults26' class='pbresults'><\/div>\n<\/div>\n<\/form>\n<script type='text\/javascript'>document.getElementById(\"submit26\").value = \"Run program\";document.getElementById(\"inputInUse26\").value = \"N\";<\/script>\n<\/p>\n<p><form class=\"pbform\" action=\"#\" id=\"pbform27\" method=\"POST\">\n<div class='pybox modeNeutral  facultative' id='pybox27'>\n<div class=\"heading\"><span class='type'>Example: <\/span><span class='title'>duomen\u0173 u\u017eklausos - list\/dict comprehension<\/span><\/div><div class='pyboxTextwrap pyboxCodewrap RO '  style='height: 318px;'><textarea wrap='off' name='usercode27' id='usercode27'  cols=10 rows=12 readonly='readonly'  style = 'height : 318px;'  class='pyboxCode RO'>\nvardai=[\"Jurgis\", \"Antanina\", \"Onut\u0117\", \"Martynas\"]\nturtai = [101, 13, 200, 66]\nvardu_inicialai = [  x[0]  for  x  in  vardai  ]  #  rezultatas - naujas s\u0105ra\u0161as, kurio elementai sukuriami pagal x[0]\nprint(\"vardu_inicialai\", vardu_inicialai)\n\n# atrinksim didesnius u\u017e 100 turtus -- prisideda s\u0105lyga if\ndideli_turtai = [x for x in turtai if  x &gt; 100]\nprint(\"dideli_turtai\", dideli_turtai)\n\n# Galima atrinkti turtuolius su vardais \u012f \u017eodyn\u0105 i\u0161vardinant poras key<strong>:<\/strong>value\ntur\u010diai = { kas:kiek    for    kas, kiek    in     zip(vardai, turtai)      if  kiek &gt; 100 }\nprint(\"tur\u010diai\", tur\u010diai )<\/textarea><\/div>\n<div id='pbhistory27' class='flexcontain' style='display:none;'><\/div>\n<div class='pyboxbuttons'><table><tr>\n<td><input type='submit' name='submit' id='submit27' value=' '\/><\/td>\n<td><input type='button' name='consolecopy' value=\"Open in console\" onclick=\"pbConsoleCopy(27)\" ><\/td>\n<td><input type='button' name='visualize' value=\"Visualize\" onclick=\"pbVisualize(27,'N')\" ><\/td>\n<\/tr><\/table><\/div>\n<input type=\"hidden\" name=\"lang\" value=\"\"\/><input type=\"hidden\" id=\"inputInUse27\" name=\"inputInUse\" value=\"Y\"\/>\n<input type=\"hidden\" name=\"pyId\" value=\"27\"\/>\n<input type=\"hidden\" name=\"hash\" value=\"3f20bc146f5d572872626d2841b3de40\"\/>\n<div id='pbresults27' class='pbresults'><\/div>\n<\/div>\n<\/form>\n<script type='text\/javascript'>document.getElementById(\"submit27\").value = \"Run program\";document.getElementById(\"inputInUse27\").value = \"N\";<\/script>\n<\/p>\n<p><form class=\"pbform\" action=\"#\" id=\"pbform28\" method=\"POST\">\n<div class='pybox modeNeutral  facultative' id='pybox28'>\n<div class=\"heading\"><span class='type'>Example: <\/span><span class='title'>argument\u0173 i\u0161pakavimas i\u0161 s\u0105ra\u0161\u0173\/\u017eodyn\u0173<\/span><\/div>Turint s\u0105ra\u0161\u0105, jo elementus galima pateikti\u00a0funkcijai kaip argumentus. O \u017eodyno poras galima paduoti kaip vardinius argumentus.<div class='pyboxTextwrap pyboxCodewrap RO '  style='height: 344px;'><textarea wrap='off' name='usercode28' id='usercode28'  cols=10 rows=13 readonly='readonly'  style = 'height : 344px;'  class='pyboxCode RO'>\ndef pagreitejimas(t0, t1, jega, mase):\n   pagreitis = jega\/mase # prisiminkim fizik\u0105: a = F\/m\n   laikotarpis = t1-t0\n   rez = pagreitis * laikotarpis\n   print(\"Kai argumentai\", t0, t1, jega, mase, \", rezultatas\", rez)\n\narg_sarasas = [4, 9, 10, 2]\n# \u017evaig\u017edut\u0117 * i\u0161pakuoja s\u0105ra\u0161\u0105\npagreitejimas( *arg_sarasas ) # gausis tarsi kviestume:  pagreitejimas(4, 9, 10, 2)\n\narg_zodynas = { \"mase\":2.5, \"jega\":5 }\n# dvi \u017evaig\u017edut\u0117s ** i\u0161pakuoja \u017eodyn\u0105\npagreitejimas( 0, 2, **arg_zodynas )  # gausis: pagreitejimas(0, 2, mase=2.5, jega=5)<\/textarea><\/div>\n<div id='pbhistory28' class='flexcontain' style='display:none;'><\/div>\n<div class='pyboxbuttons'><table><tr>\n<td><input type='submit' name='submit' id='submit28' value=' '\/><\/td>\n<td><input type='button' name='consolecopy' value=\"Open in console\" onclick=\"pbConsoleCopy(28)\" ><\/td>\n<td><input type='button' name='visualize' value=\"Visualize\" onclick=\"pbVisualize(28,'N')\" ><\/td>\n<\/tr><\/table><\/div>\n<input type=\"hidden\" name=\"lang\" value=\"\"\/><input type=\"hidden\" id=\"inputInUse28\" name=\"inputInUse\" value=\"Y\"\/>\n<input type=\"hidden\" name=\"pyId\" value=\"28\"\/>\n<input type=\"hidden\" name=\"hash\" value=\"bc60d260291f696f210d074eb6a6bdcc\"\/>\n<div id='pbresults28' class='pbresults'><\/div>\n<\/div>\n<\/form>\n<script type='text\/javascript'>document.getElementById(\"submit28\").value = \"Run program\";document.getElementById(\"inputInUse28\").value = \"N\";<\/script>\n<\/p>\n","protected":false},"excerpt":{"rendered":"<p>S\u0105ra\u0161as - \u201elist\u201c -\u00a0leid\u017eia saugoti reik\u0161mi\u0173 eil\u0119. Vietoje to, kad ra\u0161ytume program\u0105 su daug kintam\u0173j\u0173,\u00a0galime tur\u0117ti\u00a0s\u0105ra\u0161\u0105\u00a0x ir pasiekti jo elementus pagal numerius:\u00a0x[0], x[1], x[2] ir t.t.\u00a0 (Numeriai nurodomi lau\u017etiniuose skliaustuose.) Numer\u012f galima nurodyti,\u00a0naudojant kintam\u0105j\u012f, pvz, x[i] ir\u00a0x[i+1]. Tai leid\u017eia,\u00a0cikl\u0173 pagalba,\u00a0tvarkyti &hellip; <a href=\"https:\/\/cscircles.cemc.uwaterloo.ca\/dev\/13-lt\/\">Continue reading <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-8269","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/cscircles.cemc.uwaterloo.ca\/dev\/wp-json\/wp\/v2\/pages\/8269","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/cscircles.cemc.uwaterloo.ca\/dev\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/cscircles.cemc.uwaterloo.ca\/dev\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/cscircles.cemc.uwaterloo.ca\/dev\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/cscircles.cemc.uwaterloo.ca\/dev\/wp-json\/wp\/v2\/comments?post=8269"}],"version-history":[{"count":29,"href":"https:\/\/cscircles.cemc.uwaterloo.ca\/dev\/wp-json\/wp\/v2\/pages\/8269\/revisions"}],"predecessor-version":[{"id":8624,"href":"https:\/\/cscircles.cemc.uwaterloo.ca\/dev\/wp-json\/wp\/v2\/pages\/8269\/revisions\/8624"}],"wp:attachment":[{"href":"https:\/\/cscircles.cemc.uwaterloo.ca\/dev\/wp-json\/wp\/v2\/media?parent=8269"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}