Maison > développement back-end > Tutoriel Python > Comment déterminer si une variable est une fonction en Python ?

Comment déterminer si une variable est une fonction en Python ?

Linda Hamilton
Libérer: 2024-10-18 20:07:31
original
1085 Les gens l'ont consulté

How to Determine if a Variable is a Function in 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>
Copier après la connexion

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

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

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!

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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal