def find_in_list(a_list, find_func, reverse=False):
    """Find a matched item in list

    - a_list: list like object
    - find_func: the filter function to find a matched item
    - reverse: find in reversed? True/False

    Return a item in the list

    Example:
    data = [1, 2, 3]
    find_in_dict(data, lambda x: x > 1)                 ->   2
    find_in_dict(data, lambda x: x > 1, reverse=True)   ->   3
    """
    items = reversed(list(a_list)) if reverse else a_list
    iterable = (item for item in items if find_func(item))
    return next(iterable, None)