⊗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çeЎзбекOʻzbekTiếng Việt
Мы выкарыстоўваем cookie для працы сайта, аналітыкі і персаналізацыі. Апрацоўка дадзеных адбываецца згодна Палітыкай канфідэнцыяльнасці.
прыняць усе наладзіць адхіліць