edit: Let me clarify the mystery variables from original post
Assign some variables
WHITE = 0 #UP
BLUE = 1 #DOWN
ORANGE = 2 #LEFT
GREEN = 3 #FRONT
RED = 4 #RIGHT
YELLOW = 5 #BACK
First, I create a janky matrix:
cube = np.array([
np.array([
np.array([WHITE, WHITE, WHITE]),np.array([WHITE, WHITE, WHITE]), np.array([WHITE, WHITE, WHITE])
]),
np.array([
np.array([BLUE, BLUE, BLUE]), np.array([BLUE, BLUE, BLUE]), np.array([BLUE, BLUE, BLUE])
]),
np.array([
np.array([ORANGE, ORANGE, ORANGE]), np.array([ORANGE, ORANGE, ORANGE]), np.array([ORANGE, ORANGE, ORANGE])
]),
np.array([
np.array([GREEN, GREEN, GREEN]), np.array([GREEN, GREEN, GREEN]), np.array([GREEN, GREEN, GREEN])
]),
np.array([
np.array([RED, RED, RED]), np.array([RED, RED, RED]), np.array([RED, RED, RED])
]),
np.array([
np.array([YELLOW, YELLOW, YELLOW]), np.array([YELLOW, YELLOW, YELLOW]), np.array([YELLOW, YELLOW, YELLOW])
])
])
The np.arrays are one of my attempts at debugging.
Next, I attempt to swap columns, rows, etc. with tuple deconstruction:
rubiks[LEFT][:,2], rubiks[DOWN][0] = rubiks[DOWN][0], rubiks[LEFT][:,2]
The result is as if it were applied iteratively:
[[1 1 1]
[1 1 1]
[1 1 1]]
[[2 2 1]
[2 2 1]
[2 2 1]]
It should be:
[[2 2 2]
[1 1 1]
[1 1 1]]
[[2 2 1]
[2 2 1]
[2 2 1]]
I assume I am misunderstanding something, but shouldn't this swap the values like intended?