When I have a=1
and b=2
, I can write a,b=b,a
so that a
and b
are interchanged with each other.
I use this matrix as an array:
[ 1, 2, 0, -2]
[ 0, 0, 1, 2]
[ 0, 0, 0, 0]
Swapping the columns of a numpy array does not work:
import numpy as np
x = np.array([[ 1, 2, 0, -2],
[ 0, 0, 1, 2],
[ 0, 0, 0, 0]])
x[:,1], x[:,2] = x[:,2], x[:,1]
It yields:
[ 1, 0, 0, -2]
[ 0, 1, 1, 2]
[ 0, 0, 0, 0]
So x[:,1]
has simply been overwritten and not transferred to x[:,2]
.
Why is this the case?
See Question&Answers more detail:
os