Generando combinaciones en python

No estoy seguro de cómo hacer esto en Python, si es posible. Lo que necesito hacer es crear una matriz (o una matriz o un vector) a partir de 3 matrices separadas. Cada matriz como 4 elementos como tal, devuelven esto:

Clase1 = [1,2,3,4] Clase2 = [1,2,3,4] Clase3 = [1,2,3,4]

Ahora lo que me gustaría hacer es devolver todas las combinaciones posibles de estas tres clases.

Ejemplo:

1 1 1
2 1 1
3 1 1
4 1 1
1 2 1
2 2 1
3 2 1
4 2 1 ...

... y así sucesivamente hasta 64 filas (4 elementos * 16 combinaciones posibles para cada clase = 64 filas

Espero que haya una manera de hacer esto en Python. Estoy seguro de que existe, pero no estoy seguro de cuál sería la forma más eficiente de hacerlo. ¿Quizás una declaración de bucle "for in" que itera sobre cada elemento para cada clase? O ahora que estoy investigando esto, ¿itertools manejará esto?

Gracias de antemano por cualquier ayuda ofrecida.

Respuestas a la pregunta(3)

Su respuesta a la pregunta