Passer des fonctions avec des arguments à une autre fonction en Python
En Python, les fonctions peuvent être transmises comme arguments à d'autres fonctions, même avec les leurs arguments intacts. Pour y parvenir, la syntaxe *args est utilisée.
Lorsqu'une fonction accepte un nombre variable d'arguments de position, elle les regroupe dans un tuple nommé *args. Ce tuple peut ensuite être décompressé au sein de la fonction pour accéder aux arguments individuellement.
Voici un exemple :
<code class="python">def perform(function): return function() # Functions with arguments def action1(): # Do something def action2(p): # Do something def action3(p, r): # Do something</code>
Pour transmettre ces fonctions avec leurs arguments à la fonction perform, utilisez *args :
<code class="python">def perform(function, *args): function(*args) perform(action1) perform(action2, p) perform(action3, p, r)</code>
Dans la fonction perform, *args peut être décompressé pour accéder aux arguments de la fonction transmise. Cela vous permet d'appeler des fonctions avec différents nombres d'arguments de manière transparente.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!