def takes_multiple_arguments(func):
 if (func in ONE_ARITY_BUILTINS):
  return False
 elif (func in MULTI_ARITY_BUILTINS):
  return True
 try:
  spec = getargspec(func)
 except:
  return False
 try:
  is_constructor = ((spec.args[0] == 'self') and isinstance(func, type))
 except:
  is_constructor = False
 if spec.varargs:
  return True
 if (spec.defaults is None):
  return ((len(spec.args) - is_constructor) != 1)
 return (((len(spec.args) - len(spec.defaults)) - is_constructor) > 1)

def takes_multiple_arguments ( func ) : if ( func in ONE_ARITY_BUILTINS ) : return False elif ( func in MULTI_ARITY_BUILTINS ) : return True try : spec = getargspec ( func ) except : return False try : is_constructor = ( ( spec . args [ 0 ] == 'self' ) and isinstance ( func , type ) ) except : is_constructor = False if spec . varargs : return True if ( spec . defaults is None ) : return ( ( len ( spec . args ) - is_constructor ) != 1 ) return ( ( ( len ( spec . args ) - len ( spec . defaults ) ) - is_constructor ) > 1 )
does this function take multiple arguments? .