⊗pyPmFnIFN 22 of 129 menu

Pythonda ichki funktsiya bilan ishlashdagı nuanslar

Pythonda nafaqat qo'shma funktsiyalar bo'lishi mumkin, balki bitta funktsiya boshqasini qaytarishi ham mumkin. Masalan, outer funktsiyasi inner funktsiyasining asl kodini natija sifatida qaytarsin:

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

Keling, outer chaqiruvini res o'zgaruvchisiga yozamız:

res = outer() print(res)

Kod bajarilgandan so'ng, funktsiyali ob'ekt chiqadi:

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

Agar res o'zgaruvchisi qavs bilan chaqirilsa, '+++' xabari qaytadi:

print(res()) # '+++' ni chiqaradi

Kodni qayta yozish mumkin, shunda res ga outer o'zi va inner funktsiyasini chaqirish uchun ikkita qavs bilan yoziladi. Shundan kelib chiqadiki, tashqi funktsiyaning o'ng tarafida uning ichidagi funktsiyalar soniga qarab qo'shimcha qavslar yozish mumkin:

res = outer()() print(res) # '+++' ni chiqaradi

Quyidagi kod berilgan:

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

Konsolga nima chiqadi, ayting.

Quyidagi kod berilgan:

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

Konsolga nima chiqadi, ayting.

Oʻzbek
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекTiếng Việt
Biz sayt ishlashi, tahlil qilish va shaxsiylashtirish uchun cookie-fayllardan foydalanamiz. Ma'lumotlarni qayta ishlash Maxfiylik siyosatiga muvofiq amalga oshiriladi.
hammasini qabul qilish sozlash rad etish