Velocity Reviews > Rubik's cube translation

# Rubik's cube translation

castironpi@gmail.com
Guest
Posts: n/a

 03-31-2008
How do I get a Rubik's cube translation out of this:

>>> a= numpy.array([[0,1,2],[3,4,5],[6,7,8]])
>>> a

array([[0, 1, 2],
[3, 4, 5],
[6, 7, 8]])
>>> a[:,0],a[:,1],a[:,2] #no good

(array([0, 3, 6]), array([1, 4, 7]), array([2, 5, 8]))
>>>

I need [[ 6, 3, 0 ], [ 7, 4, 1 ], [ 8, 5, 2 ]].

>>> c= numpy.array([[ 6, 3, 0 ], [ 7, 4, 1 ], [ 8, 5, 2 ]])
>>> c

array([[6, 3, 0],
[7, 4, 1],
[8, 5, 2]])

Tim Leslie
Guest
Posts: n/a

 03-31-2008
On Mon, Mar 31, 2008 at 12:24 PM, <(E-Mail Removed)> wrote:
> How do I get a Rubik's cube translation out of this:
>
> >>> a= numpy.array([[0,1,2],[3,4,5],[6,7,8]])
> >>> a

> array([[0, 1, 2],
> [3, 4, 5],
> [6, 7, 8]])
> >>> a[:,0],a[:,1],a[:,2] #no good

> (array([0, 3, 6]), array([1, 4, 7]), array([2, 5, 8]))
> >>>

>
> I need [[ 6, 3, 0 ], [ 7, 4, 1 ], [ 8, 5, 2 ]].
>
> >>> c= numpy.array([[ 6, 3, 0 ], [ 7, 4, 1 ], [ 8, 5, 2 ]])
> >>> c

> array([[6, 3, 0],
> [7, 4, 1],
> [8, 5, 2]])

In [10]: numpy.rot90(a, 3)
Out[10]:
array([[6, 3, 0],
[7, 4, 1],
[8, 5, 2]])

Tim

> --
> http://mail.python.org/mailman/listinfo/python-list
>

castironpi@gmail.com
Guest
Posts: n/a

 03-31-2008
On Mar 30, 9:48*pm, "Tim Leslie" <(E-Mail Removed)> wrote:
> On Mon, Mar 31, 2008 at 12:24 PM, *<(E-Mail Removed)> wrote:
> > How do I get a Rubik's cube translation out of this:

>
> > *>>> a= numpy.array([[0,1,2],[3,4,5],[6,7,8]])
> > *>>> a
> > *array([[0, 1, 2],
> > * * * *[3, 4, 5],
> > * * * *[6, 7, 8]])
> > *>>> a[:,0],a[:,1],a[:,2] #no good
> > *(array([0, 3, 6]), array([1, 4, 7]), array([2, 5, 8]))

>
> > *I need [[ 6, 3, 0 ], [ 7, 4, 1 ], [ 8, 5, 2 ]].

>
> > *>>> c= numpy.array([[ 6, 3, 0 ], [ 7, 4, 1 ], [ 8, 5, 2 ]])
> > *>>> c
> > *array([[6, 3, 0],
> > * * * *[7, 4, 1],
> > * * * *[8, 5, 2]])

>
> In [10]: numpy.rot90(a, 3)
> Out[10]:
> array([[6, 3, 0],
> * * * *[7, 4, 1],
> * * * *[8, 5, 2]])
>
> Tim

What if this is connected:

>>> D

array([[1, 2, 3],
[4, 5, 6],
[6, 7, 8]])
>>> E

array([[6, 7, 8],
[0, 0, 0],
[0, 0, 0]])

-->

>>> D

array([[1, 2, 3],
[4, 5, 6],
[6, 7, 8]])
>>> E

array([[6, 7, 8],
[0, 0, 0],
[0, 0, 0]])
>>> numpy.rot90( D )

array([[3, 6, 8],
[2, 5, 7],
[1, 4, 6]])
-->
>>> E

array([[1, 4, 6],
[0, 0, 0],
[0, 0, 0]])

?

Tim Roberts
Guest
Posts: n/a

 04-01-2008
http://www.velocityreviews.com/forums/(E-Mail Removed) wrote:
>
>What if this is connected:
>
>>>> D

>array([[1, 2, 3],
> [4, 5, 6],
> [6, 7, 8]])
>>>> E

>array([[6, 7, 8],
> [0, 0, 0],
> [0, 0, 0]])
>
>-->
>
>>>> D

>array([[1, 2, 3],
> [4, 5, 6],
> [6, 7, 8]])
>>>> E

>array([[6, 7, 8],
> [0, 0, 0],
> [0, 0, 0]])
>>>> numpy.rot90( D )

>array([[3, 6, 8],
> [2, 5, 7],
> [1, 4, 6]])
>-->
>>>> E

>array([[1, 4, 6],
> [0, 0, 0],
> [0, 0, 0]])
>
>?

If you don't want changes to D to affect E, then you need to disconnect
them when you create them. If you create D and E so that they contain
references to the same lists, then this kind of thing will happen.
--
Tim Roberts, (E-Mail Removed)
Providenza & Boekelheide, Inc.

castironpi@gmail.com
Guest
Posts: n/a

 04-01-2008
On Apr 1, 1:00*am, Tim Roberts <(E-Mail Removed)> wrote:
> (E-Mail Removed) wrote:
>
> >What if this is connected:

>
> >>>> D

> >array([[1, 2, 3],
> > * * * [4, 5, 6],
> > * * * [6, 7, 8]])
> >>>> E

> >array([[6, 7, 8],
> > * * * [0, 0, 0],
> > * * * [0, 0, 0]])

>
> >-->

>
> >>>> D

> >array([[1, 2, 3],
> > * * * [4, 5, 6],
> > * * * [6, 7, 8]])
> >>>> E

> >array([[6, 7, 8],
> > * * * [0, 0, 0],
> > * * * [0, 0, 0]])
> >>>> numpy.rot90( D )

> >array([[3, 6, 8],
> > * * * [2, 5, 7],
> > * * * [1, 4, 6]])
> >-->
> >>>> E

> >array([[1, 4, 6],
> > * * * [0, 0, 0],
> > * * * [0, 0, 0]])

>
> >?

>
> If you don't want changes to D to affect E, then you need to disconnect
> them when you create them. *If you create D and E so that they contain
> references to the same lists, then this kind of thing will happen.

Basically, I need to change both D row 3 and E row 1 at the same time.