Python基礎 切片索引、布林索引、花式索引
阿新 • • 發佈:2018-11-11
切片索引、布林索引、花式索引是陣列的三種索引方式,但三者對於原資料的影響是不同的:
1)切片索引
#切片索引 切片是原結構的照片 改變切片中的元素 原結構跟著改變
a = np.arange(15).reshape(5,3)
print(a)
b1 = a[:2,2]
print()
print(b1)
b1[0] = 16
print(a)
結果為:
可見修改b1中的資料,會發現原資料a中的值發生改變。
2)布林索引
#布林索引 用布林索引總是會返回一份新建立的資料,原本的資料不會被改變。 a2 = np.arange(15).reshape(3,5) print(a2) mask = a2<5 b2 = a2[mask] print() print(b2) b2[0] = 17 print(a2)
結果為:
修改b2中的資料,會發現原資料a2中的值沒有發生改變。
3)花式索引
#花式索引 得到的是一個新的array,不會改動原資料
a3 = np.arange(15).reshape(3,5)
print(a3)
b3 = a3[[0,1],[1,3]]
print()
print(b3)
b3[0] = 16
print(a3)
結果為:
修改b3中的資料,會發現原資料a3中的值沒有發生改變。