⊗pyPmFnFIF 20 of 129 menu

Python-da funksiýanyň içinde funksiýa

Python-da bir funksiýalaryň içinde beýlekileri bildirip bolýar. Bizde daşarky funksiýa outer bolsun, onuň içinde bolsa inner funksiýasy bar:

def outer(): def inner(): pass

Ýokarda görkezilen mysal ýeterlik derejede ýönekeý görünýär. Emma köplenç ýagdaýlar bar, haçanda outer funksiýasynyň bedeninde inner-den başga-da beýleki amallar ýerine ýetirilýär. Kody ýönekeýleşdirmek üçin, inner daşarky kod blogyna çykaryp bolardy, ýöne bu funksiýa diňe bir gezek we diňe outer funksiýasynyň içinde ulanylar. Şonuň üçin ony çäklerinden daşary çykarmak mana berenok.

Geliň bir mysala serediň, haçanda outer funksiýasyna sanlar sanawy berilýär. We inner funksiýasynyň ýardamy bilen sanawdaky san element inenedört derejä ýokarlandyrylar. Bunuň üçin inner funksiýasyndan soň boş sanawy res bildirýäris, onda döwüre gönükdirilen elementler ýygnanar:

def outer(lst): def inner(num): return num ** 2 res = [] for el in lst: res.append(inner(el)) return res

Geliň outer funksiýasyny çagyralym, ona parametr sanawyny bereliň we netijäni konsola çykaralyň:

print(outer([2, 3, 5])) # [4, 9, 25] çykarar

Daşarky we içarky funksiýalary ýazyň, olanaryň bilelikde işi sanawyň her setir elementini baş harp bilen çykarsyn.

Funksiýalar berlen:

def func1(num): if num > 0: num += 2 return num def func2(iter): res = [] for el in iter: res.append(func1(el)) return res

func1 funksiýasynyň func2 üçin içarky funksiýa bolmagy üçin kody ýene ýazyň.

Türkmen
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkçeЎзбекOʻzbekTiếng Việt
Biz sahypanyň işlemegi, analitika we şahsyýetleşdirmek üçin cookie ulanýarys. Maglumatlaryň işlenişi Gizlinlik syýasaty boýunça amala aşyrylýar.
hemmesini kabul et sazlamak ret et