Heim > Backend-Entwicklung > Python-Tutorial > Wie überprüfe ich, ob eine Variable in Python auf eine Funktion verweist?

Wie überprüfe ich, ob eine Variable in Python auf eine Funktion verweist?

Mary-Kate Olsen
Freigeben: 2024-10-18 20:04:03
Original
559 Leute haben es durchsucht

How to Check if a Variable Refers to a Function in Python?

Funktionsvariablen in Python erkennen

Sie haben eine Variable mit dem Namen „x“ und möchten feststellen, ob sie auf eine Funktion zeigt. Während die Überprüfung des Typs von „x“ zeigt, dass es sich um eine Funktion handelt, schlägt der Versuch, isinstance(x, function) zu verwenden, fehl. Hier kommt callable() ins Spiel.

Python 2.x und Python 3.2 :

callable(x)
Nach dem Login kopieren

Python 3.x vor 3.2:

hasattr(x, '__call__')
Nach dem Login kopieren

Frühere Ansätze wie „types.FunctionTypes“ oder „inspect.isfunction“ haben Einschränkungen. Sie geben „False“ für Nicht-Python-Funktionen zurück, wie z. B. integrierte Funktionen, die in C implementiert sind.

Anstatt den Typ zu überprüfen oder in einen Container zu passen, ist es am besten, das Objekt zu „fragen“, ob es von aufgerufen werden kann Suche nach dem Attribut call. Dies gewährleistet eine genaue Identifizierung von Funktionen, unabhängig von ihrer Implementierung.

Das obige ist der detaillierte Inhalt vonWie überprüfe ich, ob eine Variable in Python auf eine Funktion verweist?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage