Dividir una lista en listas anidadas en un valor

Digamos que tengo una lista como esta:

[1, 4, None, 6, 9, None, 3, 9, 4 ]

Decido dividir esto en listas anidadas enNone, para obtener esto:

[ [ 1, 4 ], [ 6, 9 ], [ 3, 9, 4 ] ]

Por supuesto, podría haber querido hacer esto en(9, None) en cuyo caso, habríamos obtenido:

[ [ 1, 4 ], [ 6 ], [ 3 ], [ 4 ] ]

Esto es trivial si se usa la lista agregar mediante iteración (en un ciclo for)

Me interesa saber si esto se puede hacer en algo más rápido, como una lista de comprensión.

Si no, ¿por qué no (por ejemplo, una comprensión de lista no puede devolver más de un elemento de lista por iteración?)

Respuestas a la pregunta(5)

Su respuesta a la pregunta