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
Libérer: 2024-11-16 06:44:03
original
607 Les gens l'ont consulté

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
Copier après la connexion

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

def myfunc(anotherfunc, extraArgs):
    anotherfunc(*extraArgs)
Copier après la connexion

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'))
Copier après la connexion

Sortie :

a: hello b: manuel
Copier après la connexion

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!

source:php.cn
Déclaration de ce site Web
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal