У меня есть двумерный массив A
формы (4,3)
и одномерный массив a
формы (4,)
. Я хочу поменять местами первые две строки A
, а также первые два элемента в a
. Я сделал следующее:
A[0,:],A[1,:] = A[1,:],A[0,:]
a[0],a[1] = a[1],a[0]
Судя по всему, это работает для a
, но не работает для A
. Теперь вторая строка становится первой строкой, но первая строка остается неизменной. Если я сделаю следующее:
first_row_copy = A[0,:].copy()
A[0,:] = A[1,:]
A[1,:] = first_row_copy
Тогда вроде работает. Почему не работает первый способ? (но работает для a
) Кроме того, в чем разница между A_copy = A[0,:].copy()
и A_copy = A[0,:]
?