Maison >développement back-end >Tutoriel Python >Comment puis-je appeler dynamiquement une fonction en Python à l'aide d'une chaîne ?

Comment puis-je appeler dynamiquement une fonction en Python à l'aide d'une chaîne ?

Linda Hamilton
Linda Hamiltonoriginal
2024-12-22 05:17:09527parcourir

How Can I Dynamically Call a Function in Python Using a String?

Appel dynamique d'une fonction à l'aide d'une chaîne

Appeler une fonction à l'aide d'une chaîne contenant le nom de la fonction peut être utile dans certains scénarios. Voici comment y parvenir :

Utiliser getattr()

La fonction getattr() vous permet de récupérer des attributs de manière dynamique. Pour appeler une fonction à l'aide d'une chaîne, vous pouvez utiliser l'approche suivante :

import foo
func_name = "bar"
bar = getattr(foo, func_name)
result = bar()

Dans cet exemple, nous importons le module foo, puis nous utilisons func_name pour récupérer la référence à la fonction bar en utilisant getattr( ). Enfin, nous pouvons appeler la fonction et stocker le résultat dans result.

Comprendre getattr()

getattr() prend deux arguments :

  • Le premier argument est l'instance d'objet à partir de laquelle l'attribut est récupéré (ici, le module foo).
  • Le deuxième argument est la chaîne nom de l'attribut que vous souhaitez récupérer (ici, "bar").

getattr() peut être utilisé pour accéder non seulement aux fonctions mais également aux méthodes liées aux instances de classe, aux méthodes au niveau du module et même méthodes de classe.

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