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

Vidinių funkcijų naudojimo Python'e niuansai

Python'e gali būti ne tik įdėtosios funkcijos, bet ir viena funkcija gali grąžinti kitą. Pavyzdžiui, tegul funkcija outer grąžina kaip rezultatą pradinį kodą funkcijos inner:

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

Įrašykime iškvietimą outer į kintamąjį res:

res = outer() print(res)

Vykdant kodą, bus išvestas objektas su funkcija:

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

Jei iškviesti kintamąjį res su apvaliaisiais skliaustais, bus grąžintas pranešimas '+++':

print(res()) # išves '+++'

Galima perrašyti kodą taip, kad į res būtų įrašyta outer su dviem poromis apvaliųjų skliaustų - pačiai sau ir funkcijai inner iškvietimui. Iš to seka, kad galima įrašyti papildomus apvaliuosius skliaustus dešinėje nuo išorinės funkcijos pagal įdėtųjų funkcijų skaičių:

res = outer()() print(res) # išves '+++'

Duotas toks kodas:

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

Pasakykite, kas bus išvesta į konsolę.

Duotas toks kodas:

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

Pasakykite, kas bus išvesta į konsolę.

← →
↑
Lietuvių▼
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Mes naudojame slapukus svetainės veikimui, analizei ir personalizavimui. Duomenų apdorojimas vyksta pagal Privatumo politiką.
priimti visus nustatyti atšaukti