⊗pyPmFnIFN 22 of 129 menu

Nuansy pri práci s vnútornou funkciou v Pythone

V Pythone môžu byť nielen vnorené funkcie, ale aj jedna funkcia môže vrátiť inú. Napríklad, nech funkcia outer vráti ako výsledok zdrojový kód funkcie inner:

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

Zapíšme volanie outer do premennej res:

res = outer() print(res)

Po vykonaní kódu sa vypíše objekt s funkciou:

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

Ak zavoláme premennú res s okrúhlymi zátvorkami, vráti sa správa '+++':

print(res()) # vypíše '+++'

Kód je možné prepísať tak, aby do res sa zapísala outer s dvomi okrúhlymi zátvorkami - pre volanie seba samej a funkcie inner. Z čoho vyplýva, že je možné zapisovať dodatočné okrúhle zátvorky napravo od vonkajšej funkcie podľa počtu, vnorených do nej funkcií:

res = outer()() print(res) # vypíše '+++'

Daný je nasledujúci kód:

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

Povedzte, čo sa vypíše do konzoly.

Daný je nasledujúci kód:

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

Povedzte, čo sa vypíše do konzoly.

Slovenčina
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Používame cookies na fungovanie stránky, analýzu a personalizáciu. Spracúvanie údajov prebieha v súlade s Politikou ochrany osobných údajov.
prijať všetky nastaviť odmietnuť