MulaiMulai sekarang secara gratis

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 adalah bagian dari kursus

Pengantar Fungsi di Python

Lihat Kursus

Petunjuk latihan

  • Lengkapi header fungsi untuk fungsi dalam dengan nama fungsi inner_echo() dan satu parameter word1.
  • Lengkapi fungsi echo() sehingga mengembalikan inner_echo.
  • Kami telah memanggil echo() dengan argumen 2 dan menetapkan fungsi hasilnya ke twice. Tugas Anda adalah memanggil echo() dengan argumen 3. Tetapkan fungsi hasilnya ke thrice.
  • Tekan Kirim untuk memanggil twice() dan thrice() lalu mencetak hasilnya.

Latihan interaktif praktis

Cobalah latihan ini dengan menyelesaikan kode contoh berikut.

# 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'))
Edit dan Jalankan Kode