import inspect


def has_required_args(func):
    """
    Return True if the function has any required arguments.
    """
    spec = inspect.getfullargspec(func)
    num_args = len(spec.args)
    # If first arg is 'self', we can ignore one arg
    if num_args and spec.args[0] == "self":
        num_args -= 1
    # If there are defaults, we can ignore the same number of args
    if spec.defaults:
        num_args -= len(spec.defaults)
    # Do we still have args without defaults?
    return num_args > 0