Fungsi Bersarang II
Kerja bagus, Anda baru saja menyarangkan sebuah fungsi di dalam fungsi lain. Alasan menarik lain untuk menyarangkan fungsi adalah konsep closure. Ini berarti fungsi bersarang atau fungsi dalam mengingat keadaan dari lingkup yang melingkupinya saat dipanggil. Jadi, apa pun yang didefinisikan secara lokal di lingkup luar tersedia bagi fungsi dalam bahkan ketika fungsi luar telah selesai dieksekusi.
Mari lanjut! Pada latihan ini, Anda akan melengkapi definisi fungsi dalam inner_echo() dan kemudian memanggil echo() beberapa kali, masing-masing dengan argumen berbeda. Selesaikan latihan ini dan lihat apa keluarannya!
Latihan ini merupakan bagian dari kursus
Pengantar Fungsi di Python
Instruksi latihan
- Lengkapi header fungsi untuk fungsi dalam dengan nama fungsi
inner_echo()dan satu parameterword1. - Lengkapi fungsi
echo()sehingga mengembalikaninner_echo. - Kami telah memanggil
echo()dengan argumen 2 dan menetapkan fungsi hasilnya ketwice. Tugas Anda adalah memanggilecho()dengan argumen 3. Tetapkan fungsi hasilnya kethrice. - Tekan Kirim untuk memanggil
twice()danthrice()lalu mencetak hasilnya.
Latihan interaktif langsung praktik
Cobalah latihan ini dengan melengkapi kode contoh ini.
# Define echo
def echo(n):
"""Return the inner_echo function."""
# Define inner_echo
def ____(____):
"""Concatenate n copies of word1."""
echo_word = word1 * n
return echo_word
# Return inner_echo
# Call echo: twice
twice = echo(2)
# Call echo: thrice
# Call twice() and thrice() then print
print(twice('hello'), thrice('hello'))