1import inspect 2 3 4def requires_self(func): 5 func_argc = len(inspect.getfullargspec(func).args) 6 if ( 7 func_argc == 0 8 or (getattr(func, "im_self", None) is not None) 9 or (hasattr(func, "__self__")) 10 ): 11 return False 12 else: 13 return True 14