def is_simple_callable(obj):
 function = inspect.isfunction(obj)
 method = inspect.ismethod(obj)
 if (not (function or method)):
  return False
 (args, _, _, defaults) = inspect.getargspec(obj)
 len_args = (len(args) if function else (len(args) - 1))
 len_defaults = (len(defaults) if defaults else 0)
 return (len_args <= len_defaults)

def is_simple_callable ( obj ) : function = inspect . isfunction ( obj ) method = inspect . ismethod ( obj ) if ( not ( function or method ) ) : return False ( args , _ , _ , defaults ) = inspect . getargspec ( obj ) len_args = ( len ( args ) if function else ( len ( args ) - 1 ) ) len_defaults = ( len ( defaults ) if defaults else 0 ) return ( len_args <= len_defaults )
true if the object is a callable that takes no arguments .