import inspect


def get_argument_help_string(param: inspect.Parameter) -> str:
    """Get a default help string for a parameter

    :param param: Parameter object
    :type param: inspect.Parameter
    :return: String describing the parameter based on the annotation and default value
    :rtype: str
    """
    help_str = ""

    if param.annotation is not param.empty:
        help_str = inspect.formatannotation(param.annotation)
    if param.default is not param.empty:
        if param.annotation is not param.empty:
            help_str += ", "

        help_str = f"{help_str}defaults to {param.default!r}"

    return help_str