from typing import List


def split_into_lists(input_list: List, target_number_of_lists: int) -> List[List]:
    """
    Evenly splits list into n lists.
    E.g split_into_lists([1,2,3,4], 4) returns [[1], [2], [3], [4]].

    :param input_list: object to split
    :param target_number_of_lists: how many lists to split into
    :returns: list of lists containing original items
    """

    quotient, reminder = divmod(len(input_list), target_number_of_lists)
    return [input_list[i * quotient + min(i, reminder):(i + 1) * quotient + min(i + 1, reminder)] for i in
            range(target_number_of_lists)]