Parcourt les fonctions dans la liste d'exécution, mais le nom de la fonction obtenu à partir de la liste est une chaîne, donc une erreur de type sera demandée et l'objet chaîne ne peut pas être appelé. Et si nous voulons que la chaîne devienne un objet appelable ? Ou souhaitez-vous appeler les attributs de module et les attributs de classe via des variables ? Il existe trois façons d'atteindre
1. eval()
eval() est généralement utilisé pour exécuter une expression de chaîne et renvoyer la valeur de l'expression. Ici, il convertit la chaîne en fonction correspondante. eval() est puissant mais dangereux (eval est mauvais) et n'est pas recommandé.
2. locaux() et globals()
locals() et globals() sont deux fonctions intégrées de python, grâce auxquelles vous pouvez accéder aux variables locales et globales dans un dictionnaire.
3. getattr()
getattr() est une fonction intégrée de python, getattr(object,name) est équivalent à object.name, mais ici, name peut être une variable.
Renvoie la méthode bar du module foo
Renvoie les propriétés de la classe Foo
La fonction methodcaller sous l'opérateur de bibliothèque standard
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!