如何检测Python变量是否为函数?
本文将介绍如何检测Python变量是否为函数。
有时候,确切地知道Python变量是否为函数是很重要的。当代码有数千行且你不是代码的创建者时,这可能看起来毫无价值,你可能会问自己变量是否是函数。
使用的方法
以下是检查Python变量是否为函数的方法:
-
使用内置的callable()函数
-
使用inspect模块的isfunction()函数
-
使用type()函数
-
使用内置的hasattr()函数
-
使用isinstance()函数
方法1:使用内置的callable()函数
callable()函数返回一个布尔值结果。如果函数可调用,则返回True,否则返回False。
语法
算法(步骤)
以下是执行所需任务的算法/步骤。
-
创建任何随机函数。这个函数返回传递给它的两个数字的加法。
-
使用return关键字返回传递给它的两个数字的和。
-
使用callable()函数检查传递的对象(即addition)是否为函数或NOT。如果是函数,则返回True,否则返回False。
-
创建一个变量来存储输入的数字。
-
同样,使用callable()函数检查变量’number’是否为函数。
示例
下面的程序使用内置的callable()函数检查Python变量是否为函数:
输出
执行上面的程序将生成以下输出:
方法2:使用inspect模块的isfunction()函数
inspect模块的isfunction()函数可用于确定变量是否为函数。如果是函数,则返回一个布尔值True,否则返回False。
此外,在使用之前必须先从inspect模块导入isfunction函数以获得布尔值。
示例
以下程序使用检查模块的isfunction()函数检查Python变量是否为函数:
输出
执行上面的程序将生成以下输出:
方法3:使用type()函数
type()函数可以识别对象的类型,因此我们可以根据对象是否是函数类型来确定它是否可调用。
简单来说,type()函数返回对象的数据类型。
例子
以下程序使用type()函数检查Python变量是否为函数。
输出
运行以上程序将生成以下输出 –
方法4:使用内置的 hasattr() 函数
hasattr()是一个函数,可以识别对象的类型,以便我们可以确定该对象类型是否为函数。与callable()同样,它也返回布尔值。
例子
以下程序使用内置的hasattr()函数检查Python变量是否为函数。
输出
运行以上程序将生成以下输出 –
方法5:使用 isinstance() 函数
isinstance()是一个函数,可以识别对象的类型,以便我们可以确定该对象是否为函数。它返回布尔值。
例子
以下程序使用isinstance()函数检查Python变量是否为函数。
输出
运行以上程序将生成以下输出 –
结论
本文介绍了五种不同的方法来确定输入变量是否为函数类型。我们还熟悉了hasattr()和isinstance()函数,这些函数允许我们确定两个变量是否为相同类型。