Heim > Artikel > Backend-Entwicklung > Wie überprüfe ich, ob eine Python-Variable eine Funktion ist?
In diesem Artikel erfahren Sie, wie Sie erkennen, ob eine Python-Variable eine Funktion ist.
Manchmal ist es wichtig festzustellen, ob eine Python-Variable eine Funktion ist. Dies mag wertlos erscheinen, wenn es Tausende von Codezeilen gibt und Sie nicht der Ersteller des Codes sind und Sie sich fragen, ob eine Variable eine Funktion ist.
So überprüfen Sie, ob eine Python-Variable eine Funktion ist:
Verwenden Sie die integrierte Funktion callable()
Verwenden Sie die isfunction()-Methode des Inspektionsmoduls
Verwenden Sie die Funktion type()
Verwenden Sie die integrierte hasattr()-Funktion
Verwenden Sie die Funktion isinstance()
Die Funktion callable() gibt ein boolesches Ergebnis zurück. Sie gibt True zurück, wenn die Funktion aufrufbar ist, andernfalls gibt sie False zurück.
callable(object)
Im Folgenden sind die Algorithmen/Schritte aufgeführt, die zur Ausführung der gewünschten Aufgabe befolgt werden müssen
return, um die Summe der beiden übergebenen Zahlen zurückzugeben.
callable(), um zu überprüfen, ob das übergebene Objekt (d. h. die Addition) eine Funktion ist oder NICHT. Es gibt True zurück, wenn es eine Funktion ist, andernfalls False.
'Nummer' eine Funktion ist oder nicht, indem Sie die Funktion callable() verwenden.
# creating a function that returns the addition # of 2 numbers passed to it def addition(p, q): # returning the sum of the given two numbers(arguments) return p+q # using the callable() function to check whether # the variable 'addition' is a function # it returns True if it is a function else False print(callable(addition)) number = 10 # checking whether the variable 'number' is a function print(callable(number))Ausgabe
True FalseMethode 2: Verwenden Sie die Funktion isfunction() des Inspektionsmoduls
des Moduls inspect kann ermittelt werden, ob eine Variable eine Funktion ist. Wenn es sich um eine Funktion handelt, gibt sie einen booleschen Wert True zurück, andernfalls gibt sie False zurück.
Um dies nutzen zu können, müssen Sie außerdem zunächst isfunction aus dem Inspect-Modul importieren, bevor Sie es verwenden können, um einen booleschen Wert zu erhalten.Beispiel
# importing isfunction from inspect module from inspect import isfunction # creating a function that returns the addition # of 2 numbers passed to it def addition(p, q): # returning the sum of the given two numbers(arguments) return p+q # using the isfunction() function to check whether # the variable 'addition' is a function or not # it returns True if it is a function else False print(isfunction(addition)) number = 10 print(isfunction(number))Ausgabe
True FalseMethode 3: Verwenden der Funktion type()
Einfach ausgedrückt gibt die Funktion
type() den Datentyp eines Objekts zurück.
Beispiel
# creating a function that returns the addition # of 2 numbers passed to it def addition(p, q): # returning the sum of the given two numbers(arguments) return p+q # checking the type of the variable by passing # the variable as an argument to it print(type(addition)) # given Variable number = 10 print(type(number))Ausgabe
<class 'function'> <class 'int'>Methode 4: Verwendung der integrierten hasattr()-Funktion
hasattr() ist eine Funktion, die den Typ eines Objekts identifiziert, sodass wir feststellen können, ob dieser Objekttyp eine Funktion ist oder nicht. Auf die gleiche Weise wie callable() gibt sie auch einen booleschen Wert zurück.
Beispiel, ob eine Python-Variable eine Funktion ist oder nicht
# creating a function that returns the addition # of 2 numbers passed to it def addition(p, q): # returning the sum of the given two numbers(arguments) return p+q # checking whether the type of variable 'addition' # is a function or not using hasattr() function # it returns True if it is a function else False print(hasattr(addition, '__call__')) number = 10 # checking whether the variable 'number' is a function or not print(hasattr(number, '__call__'))Ausgabe
True FalseMethode 5: Verwenden Sie die Funktion isinstance()
isinstance() ist eine Funktion, die den Typ eines Objekts identifiziert, sodass wir feststellen können, ob es sich bei diesem Objekt um eine Funktion handelt oder nicht. Sie gibt einen booleschen Wert zurück.
Beispiel
# importing the types module import types # creating a function that returns the addition # of 2 numbers passed to it def addition(p, q): # # returning the sum of the given two numbers(arguments) return p+q # passing object, types.FunctionType as an argument to the # isinstance() function to check whether it is a function or not print(isinstance(addition, types.FunctionType)) number = 10 # checking whether the above variable 'number' is a function or not print(isinstance(number, types.FunctionType))Ausgabe
True FalseFazit
Das obige ist der detaillierte Inhalt vonWie überprüfe ich, ob eine Python-Variable eine Funktion ist?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!