{"id":319,"date":"2011-04-21T15:40:46","date_gmt":"2011-04-21T12:40:46","guid":{"rendered":"http:\/\/python.pingviinitiivul.ee\/?p=319"},"modified":"2011-04-21T17:15:25","modified_gmt":"2011-04-21T14:15:25","slug":"kakskummend-kuus","status":"publish","type":"post","link":"https:\/\/python.pingviinitiivul.ee\/?p=319","title":{"rendered":"Kaksk\u00fcmmend kuus"},"content":{"rendered":"<p>Proovime n\u00e4iteks lahendada sellist \u00fclessannet:<\/p>\n<p><code>\u00c4rimees tahab lennata linnast A linna C. Kuna nende linnade vahel otseliini pole, tuleb tal linnas B \u00fchelt lennukilt teisele \u00fcmber istuda. \u00dcmberistumiseks kulub v\u00e4hemalt 30 minutit. Kirjutada programm, mis liinide A \u2212 B ja B \u2212 C lennugraa\ufb01kute p\u00f5hjal leiab reisiplaani, mille ajakulu on v\u00e4him v\u00f5imalik.<br \/>\n<\/code><br \/>\nLennuliinid on failis: lennud.txt :<br \/>\nN\u00e4iteks:<\/p>\n<p><code>* Tallinn-London<br \/>\n10:10 11:50<br \/>\n13:10 14:50<br \/>\n16:40 18:20<br \/>\n* London-Boston<br \/>\n8:10 16:50<br \/>\n12:10 20:50<br \/>\n22:40 6:20<\/code><\/p>\n<p>Vastuseks kirjutab programm ekraanile:<br \/>\n<code>Tallinn-London<br \/>\n16:40 18:20<br \/>\nLondon-Boston<br \/>\n22:40 6:20<\/code><\/p>\n<p>(Keerulisemaks l\u00e4heb asi siis kui reis v\u00f5ib toimuda ka mitme j\u00e4rjestikuse p\u00e4eva jooksul v\u00f5i v\u00f5ib m\u00f5ni lennuk olla \u00f5hus kesk\u00f6\u00f6l. Kui saame k\u00e4ima versiooni, mis seda ei toeta, siis on pool t\u00f6\u00f6d tehtud.)<\/p>\n<p>Tegeleme selle \u00fclesandega hiljem edasi. Seniks m\u00f5ned tekstiga tehtavad funktsioonid, mida meil tarvis l\u00e4heb:<\/p>\n<p>.split(&#8220;:&#8221;) &#8211; oleme ilma parameetriteta varem ka kasutanud, siis teeb ta tekstijupi t\u00fckkideks t\u00fchikute kohtadelt. Kui aga kaasa anda parameeter, siis tehakse tekst t\u00fckkideks just selle m\u00e4rgi kohalt. Selles \u00fclesandes tuleb linnade nimed \u00fcksteisest eraldada kriipsu &#8220;-&#8221; kohalt ja minutid ja tunnid eraldada kooloni &#8220;:&#8221; abil.<\/p>\n<p>find(&#8220;*&#8221;) otsib teksti hulgast soovitud m\u00e4rki v\u00f5i m\u00e4rgijada. Kui find selle leiab, siis vastuseks saab positiivse numbri, mis vastab m\u00e4rgi positsioonile tekstis. N\u00e4iteks rea &#8220;* Tallinn-London&#8221; kohta vastab find(&#8220;*&#8221;) 0, sest * on k\u00f5ige esimesel ehk n\u00f6 nullpositsioonil. Kui * ei leita, siis saab vastuseks -1.<\/p>\n<p>Kasulikud v\u00f5imalused on ka teksti kirjasuuruse muutmiseks:<\/p>\n<p>.strip() eemaldab parameetrita tavaliselt t\u00fchikud teksti algusest ja l\u00f5pust, aga parameetriks v\u00f5ib panna ka muud m\u00e4rgid, mida algusest ja l\u00f5pust eemaldada<br \/>\n.replace(&#8220;:&#8221;, &#8220;-&#8220;) vahetab teksti keskel asuva m\u00e4rgi millegi muu vastu, n\u00e4iteks kooloni kriipsuga.<br \/>\n.lower() &#8211; see tekst ainult v\u00e4iket\u00e4htedega (suurt\u00e4hed tehtud v\u00e4iket\u00e4htedeks)<br \/>\n.upper() &#8211; tekst ainult suurt\u00e4htedega<br \/>\n.swapcase() &#8211; vahetatud suur- ja v\u00e4iket\u00e4hed<br \/>\n.title() &#8211; esimene suurt\u00e4ht, teised v\u00e4iksed<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Proovime n\u00e4iteks lahendada sellist \u00fclessannet: \u00c4rimees tahab lennata linnast A linna C. Kuna nende linnade vahel otseliini pole, tuleb tal linnas B \u00fchelt lennukilt teisele \u00fcmber istuda. \u00dcmberistumiseks kulub v\u00e4hemalt 30 minutit. Kirjutada programm, mis liinide A \u2212 B ja &hellip; <a href=\"https:\/\/python.pingviinitiivul.ee\/?p=319\">J\u00e4tka lugemist <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-319","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"_links":{"self":[{"href":"https:\/\/python.pingviinitiivul.ee\/index.php?rest_route=\/wp\/v2\/posts\/319","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/python.pingviinitiivul.ee\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/python.pingviinitiivul.ee\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/python.pingviinitiivul.ee\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/python.pingviinitiivul.ee\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=319"}],"version-history":[{"count":4,"href":"https:\/\/python.pingviinitiivul.ee\/index.php?rest_route=\/wp\/v2\/posts\/319\/revisions"}],"predecessor-version":[{"id":323,"href":"https:\/\/python.pingviinitiivul.ee\/index.php?rest_route=\/wp\/v2\/posts\/319\/revisions\/323"}],"wp:attachment":[{"href":"https:\/\/python.pingviinitiivul.ee\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=319"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/python.pingviinitiivul.ee\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=319"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/python.pingviinitiivul.ee\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=319"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}