Kontrollera en closure
Du hjälper din brorsdotter att lära sig programmera i Python, och hon arbetar med att returnera nästlade funktioner. Hon tror att koden är korrekt, men oroar sig för att den returnerade funktionen inte kommer ha tillgång till nödvändig information när den anropas. Visa henne att alla icke-lokala variabler hon behöver finns i den nya funktionens closure.
Den här övningen är en del av kursen
Att skriva funktioner i Python
Interaktiv övning med praktiskt arbete
Testa den här övningen genom att slutföra den här exempelkoden.
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)