<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="lt">
	<id>https://wiki.pitonas.lt/index.php?action=history&amp;feed=atom&amp;title=Knyga%2FPa%C5%BEangios_funkcijos</id>
	<title>Knyga/Pažangios funkcijos - Versijų istorija</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.pitonas.lt/index.php?action=history&amp;feed=atom&amp;title=Knyga%2FPa%C5%BEangios_funkcijos"/>
	<link rel="alternate" type="text/html" href="https://wiki.pitonas.lt/index.php?title=Knyga/Pa%C5%BEangios_funkcijos&amp;action=history"/>
	<updated>2026-10-07T04:34:02Z</updated>
	<subtitle>Šio puslapio versijų istorija projekte</subtitle>
	<generator>MediaWiki 1.41.0</generator>
	<entry>
		<id>https://wiki.pitonas.lt/index.php?title=Knyga/Pa%C5%BEangios_funkcijos&amp;diff=524&amp;oldid=prev</id>
		<title>ArturasNik: Naujas puslapis: {{navigation |previous=Importuotos bibliotekos ir vėžlys |next=Duomenų tyryba ir informacija}}  === Pažangesnės funkcijos === Papasakosiu tau apie keletą neįtikėtinų funkcijų ir gudrybių, kurios padės supaprastinti užduočių atlikimą. &#039;&#039;Pradėkime&#039;&#039; :)  === Lambda funkcija ===  Jau žinai kaip apsirašyti funkciją su žodeliu ‘’def’’. Lambda funkcija yra tokia pati funkcija, tik labai trumpa ir anoniminė - ji neturi jokio vardo. Kai reikia apibrėž...</title>
		<link rel="alternate" type="text/html" href="https://wiki.pitonas.lt/index.php?title=Knyga/Pa%C5%BEangios_funkcijos&amp;diff=524&amp;oldid=prev"/>
		<updated>2024-10-10T10:28:49Z</updated>

		<summary type="html">&lt;p&gt;Naujas puslapis: {{navigation |previous=Importuotos bibliotekos ir vėžlys |next=Duomenų tyryba ir informacija}}  === Pažangesnės funkcijos === Papasakosiu tau apie keletą neįtikėtinų funkcijų ir gudrybių, kurios padės supaprastinti užduočių atlikimą. &amp;#039;&amp;#039;Pradėkime&amp;#039;&amp;#039; :)  === Lambda funkcija ===  Jau žinai kaip apsirašyti funkciją su žodeliu ‘’def’’. Lambda funkcija yra tokia pati funkcija, tik labai trumpa ir anoniminė - ji neturi jokio vardo. Kai reikia apibrėž...&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Naujas puslapis&lt;/b&gt;&lt;/p&gt;&lt;div&gt;{{navigation |previous=Importuotos bibliotekos ir vėžlys |next=Duomenų tyryba ir informacija}}&lt;br /&gt;
&lt;br /&gt;
=== Pažangesnės funkcijos ===&lt;br /&gt;
Papasakosiu tau apie keletą neįtikėtinų funkcijų ir gudrybių, kurios padės supaprastinti užduočių atlikimą.&lt;br /&gt;
&amp;#039;&amp;#039;Pradėkime&amp;#039;&amp;#039; :)&lt;br /&gt;
&lt;br /&gt;
=== Lambda funkcija ===&lt;br /&gt;
&lt;br /&gt;
Jau žinai kaip apsirašyti funkciją su žodeliu ‘’def’’. Lambda funkcija yra tokia pati funkcija, tik labai trumpa ir anoniminė - ji neturi jokio vardo. Kai reikia apibrėžti labai trumpą ir paprastą funkciją, kurią naudosime tik vieną kartą ir kuri nereikalauja sudėtingos logikos, galime naudoti lambda funkciją. Tai gali būti ypač naudinga, kai turime sudėtingą funkciją, kurią norime išskaidyti į smulkesnes dalis, arba kai norime panaudoti funkciją kaip argumentą kitai funkcijai. Lambda funkcijos sintaksė yra paprasta, rašome žodį lambda, po to tarp skliaustų nurodome argumentų sąrašą ir funkcijos išraišką. Tai viskas, ko mums reikia, kad apibrėžtume lambda funkciją.&lt;br /&gt;
&lt;br /&gt;
Lambda funkcijos yra naudojamos daugeliui Python standartinių funkcijų, pavyzdžiui, &amp;lt;code&amp;gt;filter()&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;map()&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;sorted()&amp;lt;/code&amp;gt;, kad būtų paprastesnis kodas. Apie jas daugiau papasakosiu šiame skyriuje, o dabar pažiūrėkime, kaip galime panaudoti lambda funkciją:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;python&amp;quot;&amp;gt;&lt;br /&gt;
# lambda funkcija apskaičiuojanti kvadratą&lt;br /&gt;
kvadratas = lambda x: x**2&lt;br /&gt;
&lt;br /&gt;
print(kvadratas(5)) # 25&lt;br /&gt;
&lt;br /&gt;
# lambda funkcija filtruojanti nelyginius skaičius&lt;br /&gt;
skaičiai = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]&lt;br /&gt;
nelyginiai = list(filter(lambda x: x % 2 != 0, skaičiai))&lt;br /&gt;
&lt;br /&gt;
print(nelyginiai) # [1, 3, 5, 7, 9]&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Lambda funkcija taip pat gali būti naudinga, kai reikia perduoti funkciją kaip argumentą į kitą funkciją. Tai leidžia sukurti trumpą, paprastą ir lengvai suprantamą kodą.&lt;br /&gt;
&lt;br /&gt;
=== Rikiavimas su &amp;#039;&amp;#039;sorted()&amp;#039;&amp;#039; ===&lt;br /&gt;
Anksčiau rodžiau rikiavimo funkciją su sąrašais. Sąrašo funkcija &amp;lt;code&amp;gt;sąrašas.sort()&amp;lt;/code&amp;gt; modifikuoja savo elementus juos surikiuodamas. Taip kintamasis pakeičia savo reikšmę. Python taip pat turi funkciją &amp;lt;code&amp;gt;sorted()&amp;lt;/code&amp;gt; kuri grąžina naują surikiuotą rezultatą, nepakeisdama originalaus kintamojo.&lt;br /&gt;
Pažiūrėkim, kaip tai veikia:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;python&amp;quot;&amp;gt;&lt;br /&gt;
# susikuriame sąrašą su atsitiktiniais skaičiais&lt;br /&gt;
sąrašas = [3,1,5,23,0]&lt;br /&gt;
# sorted grąžina surikiuotą sąrašą, kuri priskiriame naujajam kintamajam.&lt;br /&gt;
surikiuotas_sąrašas = sorted(sąrašas)&lt;br /&gt;
&lt;br /&gt;
# atsispausdiname rezultatą. Matysi, kad kintamasis sąrašas nepakeitė reikšmės, o surikiuotas_sąrašas reikšmė yra surikiuota.&lt;br /&gt;
print(surikiuotas_sąrašas, sąrašas)&lt;br /&gt;
&lt;br /&gt;
# pažiūrėkim, ką padarys funkcija sort()&lt;br /&gt;
sąrašas.sort()&lt;br /&gt;
# rezultate matysi du surikiuotus identiškus sąrašus.&lt;br /&gt;
print(surikiuotas_sąrašas, sąrašas)&lt;br /&gt;
&lt;br /&gt;
# kaip surikiuoti mažėjančia tvarka? Tiesiog pridėkime prie funkcijos reverse=True&lt;br /&gt;
atbulas_sąrašas = sorted(surikiuotas_sąrašas, reverse=True)&lt;br /&gt;
print(atbulas_sąrašas, surikiuotas_sąrašas, sąrašas)&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Rezultatus turėtum matyti tokius:&lt;br /&gt;
&lt;br /&gt;
 [0, 1, 3, 5, 23] [3, 1, 5, 23, 0]&lt;br /&gt;
 [0, 1, 3, 5, 23] [0, 1, 3, 5, 23]&lt;br /&gt;
 [23, 5, 3, 1, 0] [0, 1, 3, 5, 23] [0, 1, 3, 5, 23]&lt;br /&gt;
&lt;br /&gt;
Akylus skaitytojas pamatys, kad pavyzdyje parodžiau papildomą sorted funkcionalumą atbuliniam sąrašo rikiavimui:  &amp;lt;code&amp;gt;sorted(sąrašas, reverse=True)&amp;lt;/code&amp;gt;. &amp;#039;&amp;#039;&amp;#039;reverse&amp;#039;&amp;#039;&amp;#039; anglų kalboje reiškia &amp;#039;&amp;#039;atbulinis&amp;#039;&amp;#039;, todėl tai pasako funkcijai, kad mums reikia grąžint sąrašą atbuline tvarka.&lt;br /&gt;
&lt;br /&gt;
Dar vienas labai svarbus skirtumas tarp sąrašas.sort() ir sorted() - ‘’sorted’’ naudojamas visiems iteruojamiems objektams. Pavyzdžiui anksčiau skyriuje minėtiems žodynams.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;python&amp;quot;&amp;gt;&lt;br /&gt;
# pasirašom funkciją sąrašo atvaizdavimui &lt;br /&gt;
def spausdink(sąrašas):&lt;br /&gt;
    for elementas in sąrašas:&lt;br /&gt;
        print(elementas)&lt;br /&gt;
    print(&amp;#039;&amp;#039;)&lt;br /&gt;
&lt;br /&gt;
# apsirašom sąrašą žodynų, kuriuos rikiuosime.&lt;br /&gt;
žodynai = [&lt;br /&gt;
    {&amp;quot;vardas&amp;quot;: &amp;quot;Darius&amp;quot;, &amp;quot;metai&amp;quot;: 15, &amp;quot;pomėgis&amp;quot;: &amp;quot;bėgimas&amp;quot;},&lt;br /&gt;
    {&amp;quot;vardas&amp;quot;: &amp;quot;Marius&amp;quot;, &amp;quot;metai&amp;quot;: 14, &amp;quot;pomėgis&amp;quot;: &amp;quot;krepšinis&amp;quot;},&lt;br /&gt;
    {&amp;quot;vardas&amp;quot;: &amp;quot;Karolis&amp;quot;, &amp;quot;metai&amp;quot;: 16, &amp;quot;pomėgis&amp;quot;: &amp;quot;krepšinis&amp;quot;},&lt;br /&gt;
    {&amp;quot;vardas&amp;quot;: &amp;quot;Gileta&amp;quot;, &amp;quot;metai&amp;quot;: 13, &amp;quot;pomėgis&amp;quot;: &amp;quot;tinklinis&amp;quot;},&lt;br /&gt;
    {&amp;quot;vardas&amp;quot;: &amp;quot;Eglė&amp;quot;, &amp;quot;metai&amp;quot;: 17, &amp;quot;pomėgis&amp;quot;: &amp;quot;bėgimas&amp;quot;},&lt;br /&gt;
]&lt;br /&gt;
&lt;br /&gt;
print(&amp;#039;surikiuojam pagal metus mažėjančia tvarka&amp;#039;)&lt;br /&gt;
spausdink(sorted(žodynai, key=lambda x: -x[&amp;#039;metai&amp;#039;]))&lt;br /&gt;
&lt;br /&gt;
print(&amp;#039;rikiuojame pagal dvi reikšmes: pradžioje pagal pomėgį, o vėliau pagal metus didėjančia tvarka.&amp;#039;)&lt;br /&gt;
spausdink( sorted(žodynai, key=lambda x: (x[&amp;#039;pomėgis&amp;#039;], x[&amp;#039;metai&amp;#039;])) )&lt;br /&gt;
print(&amp;#039;nurodome atbuline tvarka&amp;#039;)&lt;br /&gt;
spausdink( sorted(žodynai, key=lambda x: (x[&amp;#039;pomėgis&amp;#039;], x[&amp;#039;metai&amp;#039;]), reverse=True) )&lt;br /&gt;
&lt;br /&gt;
print(&amp;#039;rikiuojame pagal pomėgį didėjančia tvarka, o vėliau pagal metus mažėjančia&amp;#039;)&lt;br /&gt;
spausdink( sorted(žodynai, key=lambda x: (x[&amp;#039;pomėgis&amp;#039;], -x[&amp;#039;metai&amp;#039;])) )&lt;br /&gt;
print(&amp;#039;nurodome atbuline tvarka&amp;#039;)&lt;br /&gt;
spausdink( sorted(žodynai, key=lambda x: (x[&amp;#039;pomėgis&amp;#039;], -x[&amp;#039;metai&amp;#039;]), reverse=True) )&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Rezultatas bus toks:&lt;br /&gt;
&lt;br /&gt;
 surikiuojam pagal metus mažėjančia tvarka&lt;br /&gt;
 {&amp;#039;vardas&amp;#039;: &amp;#039;Eglė&amp;#039;, &amp;#039;metai&amp;#039;: 17, &amp;#039;pomėgis&amp;#039;: &amp;#039;bėgimas&amp;#039;}&lt;br /&gt;
 {&amp;#039;vardas&amp;#039;: &amp;#039;Karolis&amp;#039;, &amp;#039;metai&amp;#039;: 16, &amp;#039;pomėgis&amp;#039;: &amp;#039;krepšinis&amp;#039;}&lt;br /&gt;
 {&amp;#039;vardas&amp;#039;: &amp;#039;Darius&amp;#039;, &amp;#039;metai&amp;#039;: 15, &amp;#039;pomėgis&amp;#039;: &amp;#039;bėgimas&amp;#039;}&lt;br /&gt;
 {&amp;#039;vardas&amp;#039;: &amp;#039;Marius&amp;#039;, &amp;#039;metai&amp;#039;: 14, &amp;#039;pomėgis&amp;#039;: &amp;#039;krepšinis&amp;#039;}&lt;br /&gt;
 {&amp;#039;vardas&amp;#039;: &amp;#039;Gileta&amp;#039;, &amp;#039;metai&amp;#039;: 13, &amp;#039;pomėgis&amp;#039;: &amp;#039;tinklinis&amp;#039;}&lt;br /&gt;
 &lt;br /&gt;
 rikiuojame pagal dvi reikšmes: pradžioje pagal pomėgį, o vėliau pagal metus didėjančia tvarka.&lt;br /&gt;
 {&amp;#039;vardas&amp;#039;: &amp;#039;Darius&amp;#039;, &amp;#039;metai&amp;#039;: 15, &amp;#039;pomėgis&amp;#039;: &amp;#039;bėgimas&amp;#039;}&lt;br /&gt;
 {&amp;#039;vardas&amp;#039;: &amp;#039;Eglė&amp;#039;, &amp;#039;metai&amp;#039;: 17, &amp;#039;pomėgis&amp;#039;: &amp;#039;bėgimas&amp;#039;}&lt;br /&gt;
 {&amp;#039;vardas&amp;#039;: &amp;#039;Marius&amp;#039;, &amp;#039;metai&amp;#039;: 14, &amp;#039;pomėgis&amp;#039;: &amp;#039;krepšinis&amp;#039;}&lt;br /&gt;
 {&amp;#039;vardas&amp;#039;: &amp;#039;Karolis&amp;#039;, &amp;#039;metai&amp;#039;: 16, &amp;#039;pomėgis&amp;#039;: &amp;#039;krepšinis&amp;#039;}&lt;br /&gt;
 {&amp;#039;vardas&amp;#039;: &amp;#039;Gileta&amp;#039;, &amp;#039;metai&amp;#039;: 13, &amp;#039;pomėgis&amp;#039;: &amp;#039;tinklinis&amp;#039;}&lt;br /&gt;
 &lt;br /&gt;
 nurodome atbuline tvarka&lt;br /&gt;
 {&amp;#039;vardas&amp;#039;: &amp;#039;Gileta&amp;#039;, &amp;#039;metai&amp;#039;: 13, &amp;#039;pomėgis&amp;#039;: &amp;#039;tinklinis&amp;#039;}&lt;br /&gt;
 {&amp;#039;vardas&amp;#039;: &amp;#039;Karolis&amp;#039;, &amp;#039;metai&amp;#039;: 16, &amp;#039;pomėgis&amp;#039;: &amp;#039;krepšinis&amp;#039;}&lt;br /&gt;
 {&amp;#039;vardas&amp;#039;: &amp;#039;Marius&amp;#039;, &amp;#039;metai&amp;#039;: 14, &amp;#039;pomėgis&amp;#039;: &amp;#039;krepšinis&amp;#039;}&lt;br /&gt;
 {&amp;#039;vardas&amp;#039;: &amp;#039;Eglė&amp;#039;, &amp;#039;metai&amp;#039;: 17, &amp;#039;pomėgis&amp;#039;: &amp;#039;bėgimas&amp;#039;}&lt;br /&gt;
 {&amp;#039;vardas&amp;#039;: &amp;#039;Darius&amp;#039;, &amp;#039;metai&amp;#039;: 15, &amp;#039;pomėgis&amp;#039;: &amp;#039;bėgimas&amp;#039;}&lt;br /&gt;
 &lt;br /&gt;
 rikiuojame pagal pomėgį didėjančia tvarka, o vėliau pagal metus mažėjančia&lt;br /&gt;
 {&amp;#039;vardas&amp;#039;: &amp;#039;Eglė&amp;#039;, &amp;#039;metai&amp;#039;: 17, &amp;#039;pomėgis&amp;#039;: &amp;#039;bėgimas&amp;#039;}&lt;br /&gt;
 {&amp;#039;vardas&amp;#039;: &amp;#039;Darius&amp;#039;, &amp;#039;metai&amp;#039;: 15, &amp;#039;pomėgis&amp;#039;: &amp;#039;bėgimas&amp;#039;}&lt;br /&gt;
 {&amp;#039;vardas&amp;#039;: &amp;#039;Karolis&amp;#039;, &amp;#039;metai&amp;#039;: 16, &amp;#039;pomėgis&amp;#039;: &amp;#039;krepšinis&amp;#039;}&lt;br /&gt;
 {&amp;#039;vardas&amp;#039;: &amp;#039;Marius&amp;#039;, &amp;#039;metai&amp;#039;: 14, &amp;#039;pomėgis&amp;#039;: &amp;#039;krepšinis&amp;#039;}&lt;br /&gt;
 {&amp;#039;vardas&amp;#039;: &amp;#039;Gileta&amp;#039;, &amp;#039;metai&amp;#039;: 13, &amp;#039;pomėgis&amp;#039;: &amp;#039;tinklinis&amp;#039;}&lt;br /&gt;
 &lt;br /&gt;
 nurodome atbuline tvarka&lt;br /&gt;
 {&amp;#039;vardas&amp;#039;: &amp;#039;Gileta&amp;#039;, &amp;#039;metai&amp;#039;: 13, &amp;#039;pomėgis&amp;#039;: &amp;#039;tinklinis&amp;#039;}&lt;br /&gt;
 {&amp;#039;vardas&amp;#039;: &amp;#039;Marius&amp;#039;, &amp;#039;metai&amp;#039;: 14, &amp;#039;pomėgis&amp;#039;: &amp;#039;krepšinis&amp;#039;}&lt;br /&gt;
 {&amp;#039;vardas&amp;#039;: &amp;#039;Karolis&amp;#039;, &amp;#039;metai&amp;#039;: 16, &amp;#039;pomėgis&amp;#039;: &amp;#039;krepšinis&amp;#039;}&lt;br /&gt;
 {&amp;#039;vardas&amp;#039;: &amp;#039;Darius&amp;#039;, &amp;#039;metai&amp;#039;: 15, &amp;#039;pomėgis&amp;#039;: &amp;#039;bėgimas&amp;#039;}&lt;br /&gt;
 {&amp;#039;vardas&amp;#039;: &amp;#039;Eglė&amp;#039;, &amp;#039;metai&amp;#039;: 17, &amp;#039;pomėgis&amp;#039;: &amp;#039;bėgimas&amp;#039;}&lt;br /&gt;
&lt;br /&gt;
Norint naudoti funkciją &amp;lt;code&amp;gt;sorted()&amp;lt;/code&amp;gt; su žodynais, reikia programai nurodyti, pagal kurią žodyno reikšmę nori rikiuoti sąrašą. Tai gali padaryti nurodydamas &amp;lt;code&amp;gt;key=lambda kintamasis: kintamasis[‘reikšmė’]&amp;lt;/code&amp;gt;. Parametras ‘’key’’ nurodo funkcijai ‘’sorted’’, kad norėsi naudoti papildoma funkciją. Štai čia mes paduodame bevardę funkciją ‘’lambda’’, kuri ir nurodo, pagal kuriuos parametrus mes norime rikiuoti sąrašą.&lt;br /&gt;
&lt;br /&gt;
=== Pagalbininkė &amp;#039;&amp;#039;map()&amp;#039;&amp;#039; ===&lt;br /&gt;
&amp;lt;code&amp;gt;map()&amp;lt;/code&amp;gt; yra Python vidinė funkcija, kuri leidžia mums taikyti funkciją kiekvienam elementui sąraše ar kitame iteruojamame objekte. Ši funkcija grąžina naują sąrašą, kuriame kiekvienas elementas yra pritaikytas pagal paduotą funkciją.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;python&amp;quot;&amp;gt;&lt;br /&gt;
map(funkcija, sąrašas)&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* ‘’funkcija’’ yra funkcija, kuri bus taikoma kiekvienam elementui sąraše.&lt;br /&gt;
* ‘’sąrašas’’ yra sąrašas, arba kitas iteruojamas objektas.&lt;br /&gt;
&lt;br /&gt;
Pažiūrėkime į pavyzdį:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;python&amp;quot;&amp;gt;&lt;br /&gt;
# sukuriame sąrašą skaičių&lt;br /&gt;
skaičiai = [1, 2, 3, 4, 5]&lt;br /&gt;
&lt;br /&gt;
# apibrėžiame funkciją, kurią norime pritaikyti kiekvienam elementui&lt;br /&gt;
def kvadratas(x):&lt;br /&gt;
    return x**2&lt;br /&gt;
&lt;br /&gt;
# naudojame map() funkciją, kad pritaikytume funkciją kiekvienam sąrašo elementui&lt;br /&gt;
skaičiai_kvadratu = map(kvadratas, skaičiai)&lt;br /&gt;
&lt;br /&gt;
# išspausdiname naują sąrašą, kuriame kiekvienas skaičius yra pakeltas kvadratu&lt;br /&gt;
print(list(skaičiai_kvadratu)) # [1, 4, 9, 16, 25]&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Taip pat galime naudoti lambda funkcijas, kad nurodytume funkciją tiesiogiai &amp;lt;code&amp;gt;map()&amp;lt;/code&amp;gt; funkcijos viduje, kaip gali pamatyti čia:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;python&amp;quot;&amp;gt;&lt;br /&gt;
# sukuriame sąrašą skaičių&lt;br /&gt;
skaičiai = [1, 2, 3, 4, 5]&lt;br /&gt;
&lt;br /&gt;
# naudojame lambda funkciją, kad apibrėžtume funkciją tiesiogiai map() viduje&lt;br /&gt;
skaičiai_kvadratu = map(lambda x: x**2, skaičiai)&lt;br /&gt;
&lt;br /&gt;
# išspausdiname naują sąrašą, kuriame kiekvienas skaičius yra pakeltas kvadratu&lt;br /&gt;
print(list(skaičiai_kvadratu)) # [1, 4, 9, 16, 25]&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;map()&amp;lt;/code&amp;gt; funkcija yra naudinga, kai reikia greitai ir efektyviai pritaikyti tam tikrą funkciją kiekvienam sąrašo ar kitame iteruojamame objekte esančiam elementui, ir gauti naują sąrašą su apdorotais elementais.&lt;br /&gt;
&lt;br /&gt;
Beje, ar atkreipei dėmesį, kad norint atspausdinti sąrašą, aš panaudojau funkciją &amp;lt;code&amp;gt;list()&amp;lt;/code&amp;gt;. Ar žinai kodėl?&lt;br /&gt;
&lt;br /&gt;
Tai yra dėl to, kad &amp;lt;code&amp;gt;map()&amp;lt;/code&amp;gt; funkcija grąžina iteruojamą objektą, kuris yra vadinamas &amp;#039;&amp;#039;generatoriumi&amp;#039;&amp;#039;. Generatorius yra specialus iteruojamas objektas, kuris leidžia gauti reikiamus duomenis vieną po kito pagal poreikį, taip sutaupant atminties resursus. Tačiau, norint matyti visus elementus iš karto, reikia sukurti sąrašą ar kitą tipo objektą, kuris saugotų visus &amp;lt;code&amp;gt;map()&amp;lt;/code&amp;gt; funkcijos grąžinamus elementus. Tai padaryti galime, panaudoję &amp;lt;code&amp;gt;list()&amp;lt;/code&amp;gt; funkciją, kuri konvertuoja generatoriaus grąžinamą objektą į sąrašą.&lt;br /&gt;
&lt;br /&gt;
=== Filtravimas su &amp;#039;&amp;#039;filter()&amp;#039;&amp;#039; ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;filter()&amp;lt;/code&amp;gt; yra Python funkcija, kuri leidžia filtruoti duomenis pagal tam tikras sąlygas. Ši funkcija veikia pagal panašų principą kaip &amp;lt;code&amp;gt;map()&amp;lt;/code&amp;gt; funkcija, tačiau jos veikimo būdas yra kitoks. &amp;lt;code&amp;gt;filter()&amp;lt;/code&amp;gt; funkcija taiko nurodytą sąlygą (funkciją) kiekvienam elementui iteruojamame objekte ir grąžina tik tuos elementus, kuriuos ta sąlyga tenkina. Tai yra, funkcija išfiltruoja tik tuos elementus, kurie tenkina nurodytą sąlygą.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;filter()&amp;lt;/code&amp;gt; funkcija naudojama kartu su lambda funkcijomis arba kitomis funkcijomis, kurios grąžina True arba False. Kai reikia išgauti tik tuos elementus, kurie tenkina nurodytą sąlygą, naudojama filter() funkcija.&lt;br /&gt;
&lt;br /&gt;
Pavyzdžiui, norint išfiltruoti tik lyginius skaičius iš sąrašo, galime naudoti šią filter() funkcijos ir lambda funkcijos kombinaciją:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;python&amp;quot;&amp;gt;&lt;br /&gt;
# Sukuriamas sąrašas skaičių&lt;br /&gt;
skaičiai = [1, 2, 3, 4, 5]&lt;br /&gt;
&lt;br /&gt;
# Sukuriamas naujas sąrašas tik su lyginiais skaičiais naudojant filter() ir lambda funkciją&lt;br /&gt;
lyginiai_skaičiai = filter(lambda x: x % 2 == 0, skaičiai)&lt;br /&gt;
&lt;br /&gt;
# Išspausdinamas naujas sąrašas tik su lyginiais skaičiais&lt;br /&gt;
print(list(lyginiai_skaičiai)) # [2, 4]&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Šioje situacijoje, filter() funkcija išfiltruoja tik tuos skaičius, kurių liekana yra lygi nuliui (t.y. tik lyginiai skaičiai).&lt;br /&gt;
&lt;br /&gt;
{{navigation |previous=Importuotos bibliotekos ir vėžlys |next=Duomenų tyryba ir informacija}}&lt;br /&gt;
[[Category:Knyga]]&lt;/div&gt;</summary>
		<author><name>ArturasNik</name></author>
	</entry>
</feed>