Следите за новинками
в нашем Telegram канале. Жми, чтобы подписаться:)
⊗pyPmFnIFN 22 of 129 menu
◀ ▶

Pythonда ички функция билан ишлашдаги нюанслар

Pythonда фақат ички функцияларгина бўлмай, балки бир функция бошқа функцияни қайтариши мумкин. Масалан, outer функции inner функциясининг исходный кодини натижа сифатида қайтарсин:

def outer(): def inner(): return '+++' return inner

Келтирилинг, outer чақириғини res ўзгарувчисига ёзамиз:

res = outer() print(res)

Код бажарилганидан сўнг функция объекти чиқади:

<function outer.<locals>.inner at 0x000001564A212B90>

Агар res ўзгарувчисини қавс билан чақирсак, '+++' хабар қайтади:

print(res()) # чиқади '+++'

Кодни қайта ёзиш мумкин, resга outer икки қавс билан - ўзини ва inner функциясини чақириш учун. Шундан келиб чиқадики, ташқи функциянинг ўнга қаратилган қўшимча қавсларни унинг ичидаги функциялар сонига қараб ёзиш мумкин:

res = outer()() print(res) # чиқади '+++'

Берилган код:

def outer(): def inner(num): return num + 2 return inner res = outer()(3) print(res)

Консолга нима чиқади, айтинг.

Берилган код:

def outer(): def inner(txt): return 'hello, ' + txt return inner res = outer() print(res)

Консолга нима чиқади, айтинг.

← →
↑
Ўзбек▼
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeOʻzbekTiếng Việt
Биз веб-сайт ишлаши, таҳлил қилиш ва персоналлаштириш учун кукидан фойдаланамиз. Маълумотларни қайта ишлаш Махфийлик сиёсатига мувофиқ амалга оширилади.
ҳаммасини қабул қилиш мослаштириш рад этиш