Maison >développement back-end >Tutoriel Python >Comment déterminer si une variable est une fonction en Python ?
Vérifier si une variable est une fonction
Pour vérifier si une variable fait référence à une fonction, Python propose plusieurs approches.
Fonction appelable
Pour Python 2.x et Python 3.2, la fonction callable() peut être utilisée :
<code class="python">callable(obj)</code>
call Attribut
Dans Python 3.x antérieur à 3.2, vérifiez si l'objet possède un attribut call :
<code class="python">hasattr(obj, '__call__')</code>
Avertissements de Autres méthodes
L'utilisation de types.FunctionTypes ou inspect.isfunction, qui effectuent essentiellement la même tâche, comporte certaines mises en garde. Ces approches donnent False pour les fonctions non Python, y compris la plupart des fonctions intégrées implémentées en C :
<code class="python">>>> isinstance(open, types.FunctionType) False >>> callable(open) True</code>
Par conséquent, il est conseillé d'utiliser callable() ou hasattr() pour vérifier la présence de l'appel attribut, déterminant efficacement si un objet peut être appelé en tant que fonction.
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!