def flat_list(*alist):
    """
    Flat a tuple, list, single value or list of list to flat list
    e.g.
    
    >>> flat_list(1,2,3)
    [1, 2, 3]
    >>> flat_list(1)
    [1]
    >>> flat_list([1,2,3])
    [1, 2, 3]
    >>> flat_list([None])
    []
    """
    a = []
    for x in alist:
        if x is None:
            continue
        if isinstance(x, (tuple, list)):
            a.extend([i for i in x if i is not None])
        else:
            a.append(x)
    return a