import numpy as np
a = np.array([[1,1,1],[2,2,2],[3,3,3], [4,4,4]])
tmp = a[1]
a[1] = a[2]
a[2] = tmp
tmp只是a[1]的另乙個名字,它並不是將a[1]複製了之後,就與a[1]無關,或許可理解為一種引用。所以這段**的效果並不能如願互換原始a陣列的第2行和第三行,而是會將2,3行都變成原來的第三行[3,3,3],像這樣:
array([[1, 1, 1],
[3, 3, 3],
[3, 3, 3],
[4, 4, 4]])
那麼如果想互換兩行,應該怎麼操作呢?
有兩種方法,第一種很簡便:
a[[1,2], :] = a[[2,1], :]
這樣就將陣列a的第2行和第3行互換了。或者,寫得更易理解一點,也可以這樣一步一步寫:
tmp = np.copy(a[1])
a[1] = a[2]
a[2] = tmp
這兩種寫法都可以將陣列a的第2,3行互換,即可以得到:
array([[1, 1, 1],
[3, 3, 3],
[2, 2, 2],
[4, 4, 4]])
awk輸出相同列的前兩行和後兩行
要求列印,第一列相同的頭兩行和後兩行 file ax bx 1 ax bx 2 ax bx 1 ax bx 8 ax bx 1 ax bx 3 ax bx 5 cx bx 1 cx bx 0 cx bx 1 cx bx 6 cx bx 9 ex bx 1 ex bx a ex bx 1 ex bx ...
python指令碼前兩行
1.第一行指定直譯器路徑 usr bin env python 詳細說明 usr bin python是告訴作業系統執行這個指令碼的時候,呼叫 usr bin下的python直譯器 usr bin env python這種用法是為了防止使用者沒有將python裝在預設的 usr bin路徑裡。當系統...
5 5的二維陣列,交換兩行
陣列 第8題 描述 編寫乙個函式 int swap int array 5 5 int n,int m 輸入引數是5 5的二維陣列,和n m兩個行下標。功能 判斷n m是否在陣列範圍內,如果不在,則返回0 如果在範圍內,則將n行元素與m行元素交換,並返回1。在main函式中,建立乙個5 5的矩陣,輸...