Vérification de la fermeture
Vous apprenez à votre nièce à programmer en Python, et elle travaille sur le retour de fonctions imbriquées. Elle pense avoir écrit le code correctement, mais elle craint que la fonction retournée ne dispose pas des informations nécessaires lorsqu'elle sera appelée. Montrez-lui que toutes les variables non locales dont elle a besoin se trouvent dans la fermeture de la nouvelle fonction.
Cet exercice fait partie du cours
Écrire des fonctions en Python
Exercice interactif pratique
Essayez cet exercice en complétant cet exemple de code.
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)