Comme vous pouvez le constater à partir du code ci-dessous, j’ajoute une série de fonctions à une liste. Le résultat est que chaque fonction est exécutée et la valeur renvoyée est ajoutée à la liste.
foo_list = []
foo_list.append(bar.func1(100))
foo_list.append(bar.func2([7,7,7,9]))
foo_list.append(bar.func3(r"C:Usersuserdesktopoutput"))
Ce que j'aimerais savoir, c'est s'il est possible de stocker la fonction dans la liste, puis de l'exécuter lorsqu'elle est itérée dans une boucle for.
Réponses:
4 pour la réponse № 1Oui, utilisez simplement lambda:
foo_list = []
foo_list.append(lambda: bar.func1(100))
foo_list.append(lambda: bar.func2([7,7,7,9]))
foo_list.append(lambda: bar.func3(r"C:Usersuserdesktopoutput"))
for foo in foo_list:
print(foo())