Maison >développement back-end >Tutoriel Python >Comment puis-je transmettre une fonction comme argument en Python ?

Comment puis-je transmettre une fonction comme argument en Python ?

DDD
DDDoriginal
2024-11-16 06:44:03623parcourir

How Can I Pass a Function as an Argument in Python?

Fonctions comme arguments en Python

En Python, il est possible de passer une fonction comme argument à une autre fonction. C'est ce qu'on appelle une fonction de rappel. Explorons comment cela fonctionne.

Pour transmettre une fonction comme argument, définissez une fonction qui prend la référence de la fonction de rappel comme argument. Cet argument doit également accepter tous les paramètres supplémentaires que vous souhaitez transmettre à la fonction de rappel.

Par exemple, considérez le modèle de fonction suivant :

def myfunc(anotherfunc, extraArgs):
    # somehow call `anotherfunc` here, providing `extraArgs`
    pass

Pour appeler une fonction de rappel dans myfunc, utilisez la syntaxe suivante :

def myfunc(anotherfunc, extraArgs):
    anotherfunc(*extraArgs)

Ici, nous utilisons l'opérateur astérisque (*) pour décompresser les extraArgs en arguments individuels, permettant à la fonction de rappel de recevoir ces arguments.

Par exemple :

def x(a, b):
    print('a:', a, 'b:', b)

def y(z, t):
    z(*t)

y(x, ('hello', 'manuel'))

Sortie :

a: hello b: manuel

Dans cet exemple, la fonction y passe la fonction x et un tuple contenant les arguments comme arguments de fonction de rappel à la fonction myfunc.

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