Memeriksa closure
Anda sedang mengajarkan keponakan Anda pemrograman Python, dan ia sedang berlatih mengembalikan fungsi bersarang. Ia merasa sudah menulis kode dengan benar, tetapi khawatir fungsi yang dikembalikan tidak akan memiliki informasi yang diperlukan saat dipanggil. Tunjukkan bahwa semua variabel nonlokal yang ia perlukan ada di closure fungsi baru tersebut.
Latihan ini adalah bagian dari kursus
Menulis Function di Python
Latihan interaktif praktis
Cobalah latihan ini dengan menyelesaikan kode contoh berikut.
def return_a_func(arg1, arg2):
def new_func():
print('arg1 was {}'.format(arg1))
print('arg2 was {}'.format(arg2))
return new_func
my_func = return_a_func(2, 17)
# Show that my_func()'s closure is not None
print(my_func.____ is not None)