Pythonでは、指定のオブジェクトが呼び出し可能であるかを判定するためにcallable関数があります。
callable
次のようにして判定を行います。
import sys def func_test(): print('function') class ClassTest(): pass str_test = 'str' print(callable(sys)) print(callable(func_test)) print(callable(ClassTest)) print(callable(str_test))
False True True False
sysはモジュールであるため、呼び出し可能なオブジェクトではありません。文字列も同様でFalseが返ります。関数やメソッド、クラスは呼び出し可能なので「 () 」で呼び出すことができます。