Partition list ``l`` in ``K`` partitions, without empty parts.

    >>> l = [0, 1, 2]
    >>> list(neclusters(l, 2))
    [[[0, 1], [2]], [[1], [0, 2]], [[0], [1, 2]]]
    >>> list(neclusters(l, 1))
    [[[0, 1, 2]]]

def neclusters(l, K):
    """Partition list ``l`` in ``K`` partitions, without empty parts.

    >>> l = [0, 1, 2]
    >>> list(neclusters(l, 2))
    [[[0, 1], [2]], [[1], [0, 2]], [[0], [1, 2]]]
    >>> list(neclusters(l, 1))
    [[[0, 1, 2]]]
    """
    for c in clusters(l, K):
        if all(x for x in c):
            yield c