python既具有普通程式開發語言的特點,也具有matlab語言用於數值計算的特點,,當然了數值計算是由其其強大的第三方庫numpy實現的,矩陣在python中資料型別是ndarray,python中交換兩個數值的**和交換同一矩陣(ndarray)中不同向量的寫法是不一樣的。
以下是用python原生的資料結構list實現的交換
>> a = [1,2,3]
>> b = [4,5,6]
>> a
[1,2,3]
>> b
[4,5,6]
>> a,b = b,a
>> a
[4,5,6]
>> b
>[1,2,3]
以下是numpy中交換矩陣中兩列元素的方法
>> import numpy as np
>> a = np.array([[1,2,3],[4,5,6]])
>> a
array([[1, 2, 3],
[4, 5, 6]])
>> a[:,0],a[:,-1] = a[:,-1],a[:,0]
>> a
array([[3, 2, 3],
[6, 5, 6]])
>> a[:,[0, -1]] = a[:,[-1, 0]]
>> a
array([[3, 2, 1],
[6, 5, 4]])
上面**是將同一矩陣的第一列和最後一列進行了交換,可見,用第一種的寫法是錯誤的,第二種正確。
注意: 交換再同一矩陣中的不同行才要這樣寫,如果是不同矩陣的話按第一種寫法就可以了
Python中交換兩個元素的實現方法
python既具有普通程式開發語言的特點,也具有matlab語言用於數值計算的特點,當然了數值計算是由其其強大的第三方庫numpy實現的,矩陣在python中資料型別是ndarray,python中交換兩個數值的 和交換同一矩陣 ndarray 中不同向量的寫法是不一樣的。以下是用python原生的...
交換陣列中兩個元素的位置
簡單的交換陣列中倆個元素的位置,交換後為.同樣交換倆個數字,比如這樣的 public static void swap int a,int b 然後再列印的話,實際上是交換不了的。因為此時的 a,b只是形參,我們知道形參的改變不會影響實參的變化,因此交換不了。那麼為什麼陣列可以交換呢,讓我們來看一下...
python 列表中兩個元素交換值遇到bug
list 10,99999,20,3,50 需求 將列表中最大值與最小值分別放至列表第一和最後一位 於是執行以下操作 list 0 list list.index max list list list.index max list list 0 列印結果print list 結果如下 將中間交換的 ...