Maison  >  Article  >  développement back-end  >  Comment transmettre des fonctions avec des arguments à d’autres fonctions en Python ?

Comment transmettre des fonctions avec des arguments à d’autres fonctions en Python ?

Linda Hamilton
Linda Hamiltonoriginal
2024-10-23 07:23:29380parcourir

How to Pass Functions with Arguments to Other Functions in Python?

Passer des fonctions avec des arguments en Python

En Python, les fonctions sont des objets de première classe, ce qui signifie qu'elles peuvent être transmises comme arguments à d'autres fonctions. Cela permet une plus grande flexibilité et modularité dans le code.

Considérons un scénario dans lequel vous avez plusieurs fonctions avec différents arguments et que vous souhaitez les transmettre à une fonction centrale pour exécution.

Passer des fonctions avec des arguments

Pour passer des fonctions avec des arguments à une autre fonction, vous pouvez utiliser la syntaxe *args. Cela vous permet de transmettre n'importe quel nombre d'arguments à la fonction.

Par exemple, définissons une fonction appelée perform qui prend une fonction comme argument et l'exécute :

<code class="python">def perform(function):
    function()</code>

Maintenant, Définissons trois fonctions avec des arguments différents :

<code class="python">def action1():
    # Do something

def action2(p):
    # Do something with p

def action3(p, r):
    # Do something with p and r</code>

Pour passer ces fonctions avec des arguments à la fonction perform, nous pouvons utiliser la syntaxe suivante :

<code class="python">perform(action1)
perform(action2, p)
perform(action3, p, r)</code>

Dans cet exemple, action1 est passé sans arguments, action2 est passé avec un argument p et action3 est passé avec deux arguments p et r.

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn