def i_or_args(result, results):
    """Return an iterable for functions with signature f(arg, *args).
    f can be called with f([a, b, c, ...]) or f(a, b, c, ...).
    In both cases, calling i_or_args(arg, args) returns an iterable
    over a, b, c, ...
    """
    if len(results) == 0:
        return iter(result)
    return (result,) + results
