检查可调用对象是类还是函数

时间:2019-03-28 10:03:59

标签: python python-3.x

在python中,类和函数都是可调用的,但就我而言,我只想在函数中调用某些东西。

示例代码:

"f"
class AClass:
    pass

def a_func():
    pass

所以,我的实际问题是,如果写出类似以下内容,我该如何写:

type(AClass)

# Output: 
<class 'type'>

type(a_func)

# Output:
<class 'function'>

我尝试这样做:

if type(something) == <a function type>:
    # call the function 

因此,使用isinstance进行类型检查,我无法使其正常工作。

我正在与type和isinstance()进行比较,也可以通过其他任何方式解决它。

1 个答案:

答案 0 :(得分:0)

from types import FunctionType

def a():
    pass

isinstance(a, FunctionType)
>>> True