⊗pyPmFnIFN 22 of 129 menu

Kehalusan Semasa Bekerja dengan Fungsi Dalaman dalam Python

Dalam Python, bukan sahaja boleh terdapat fungsi bersarang, malah satu fungsi boleh memulangkan fungsi yang lain. Sebagai contoh, katakan fungsi outer memulangkan kod sumber fungsi inner sebagai hasil:

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

Mari kita rakam panggilan outer ke dalam pembolehubah res:

res = outer() print(res)

Selepas kod dilaksanakan, objek dengan fungsi akan dipaparkan:

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

Jika pembolehubah res dipanggil dengan tanda kurung, mesej '+++' akan dipulangkan:

print(res()) # akan memaparkan '+++'

Kod boleh ditulis semula supaya res merakamkan outer dengan dua tanda kurung - untuk memanggil dirinya sendiri dan fungsi inner. Ini bermakna tanda kurung tambahan boleh ditulis di sebelah kanan fungsi luaran sebanyak bilangan fungsi yang bersarang di dalamnya:

res = outer()() print(res) # akan memaparkan '+++'

Diberi kod berikut:

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

Beritahu apa yang akan dipaparkan dalam konsol.

Diberi kod berikut:

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

Beritahu apa yang akan dipaparkan dalam konsol.

Melayu
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Kami menggunakan kuki untuk operasi laman web, analisis dan personalisasi. Pemprosesan data dijalankan mengikut Polisi Kerahsiaan.
terima semua tataletak tolak