Maison >développement back-end >Tutoriel Python >Comment puis-je appeler dynamiquement une fonction Python en utilisant son nom ?

Comment puis-je appeler dynamiquement une fonction Python en utilisant son nom ?

Barbara Streisand
Barbara Streisandoriginal
2024-12-20 01:51:09763parcourir

How Can I Call a Python Function Dynamically Using Its Name?

Invocation de fonction via la résolution de nom dynamique

En Python, il existe des cas où vous pouvez avoir besoin d'appeler une fonction en utilisant son nom stocké sous forme de chaîne. Cette approche offre de la flexibilité et peut être utile dans divers scénarios.

Invocation de fonction dynamique

Pour invoquer dynamiquement une fonction à l'aide de sa représentation sous forme de chaîne, vous pouvez utiliser la fonction getattr(). Prenons l'exemple suivant :

import foo

func_name = "bar"
bar = getattr(foo, func_name)
result = bar()  # executes foo.bar()

Dans cet exemple, nous avons un module nommé foo avec une fonction nommée bar. Nous stockons le nom de la fonction sous forme de chaîne (func_name) et utilisons getattr() pour récupérer une référence à l'objet fonction. La variable de résultat contient désormais la valeur de retour de l'appel de fonction foo.bar().

Applicabilité de getattr()

Il est important de noter que getattr() est polyvalent et peut être appliqué à méthodes liées à une instance, fonctions au niveau du module, méthodes de classe, etc. Sa nature dynamique permet un accès flexible aux méthodes et fonctions quel que soit leur contexte d'invocation.

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