本篇文章為大家展示了使用python怎么實(shí)現(xiàn)numpy數(shù)組的索引和切片操作,內(nèi)容簡(jiǎn)明扼要并且容易理解,絕對(duì)能使你眼前一亮,通過(guò)這篇文章的詳細(xì)介紹希望你能有所收獲。
NumPy - 簡(jiǎn)介
NumPy 是一個(gè) Python 包。 它代表 “Numeric Python”。 它是一個(gè)由多維數(shù)組對(duì)象和用于處理數(shù)組的例程集合組成的庫(kù)。
Numeric,即 NumPy 的前身,是由 Jim Hugunin 開(kāi)發(fā)的。 也開(kāi)發(fā)了另一個(gè)包 Numarray ,它擁有一些額外的功能。 2005年,Travis Oliphant 通過(guò)將 Numarray 的功能集成到 Numeric 包中來(lái)創(chuàng)建 NumPy 包。 這個(gè)開(kāi)源項(xiàng)目有很多貢獻(xiàn)者。
NumPy 操作
使用NumPy,開(kāi)發(fā)人員可以執(zhí)行以下操作:
?數(shù)組的算數(shù)和邏輯運(yùn)算。
?傅立葉變換和用于圖形操作的例程。
?與線(xiàn)性代數(shù)有關(guān)的操作。 NumPy 擁有線(xiàn)性代數(shù)和隨機(jī)數(shù)生成的內(nèi)置函數(shù)。
numpy庫(kù)多維數(shù)組的類(lèi)型和列表的類(lèi)型非常類(lèi)似,同樣有索引和切片功能:
索引:獲取數(shù)組中特定位置元素的過(guò)程
切片:獲取數(shù)組元素子集的過(guò)程
1.一維數(shù)組
# 準(zhǔn)備一個(gè)數(shù)組 arr1=np.array(np.arange(9)) arr1
array([0, 1, 2, 3, 4, 5, 6, 7, 8])
# 索引 arr[-1] #8 arr1[arr1.size-2] #7 arr1[arr1.size-9] #0 # 切片 :[start:end:step] arr1[1:4] #左開(kāi)右閉的區(qū)間 arr1[1:5:2] #array([1,3]) arr1[::-1] # 反向取所有,-1變成了步長(zhǎng)
2.二維數(shù)組
# 準(zhǔn)備一個(gè)二維數(shù)組 arr2=np.array([ np.arange(1,4), np.arange(5,8) ]) arr2 array([[1, 2, 3], [5, 6, 7]]) # 索引 arr2[0][2] # 3 arr2[0,2] # 3 # 切片 arr2[0,] # array([1,2,3]) arr2[0,::] # 同上 arr2[0,0:3] #array([1,2])
3.多維數(shù)組
arr4=np.arange(1,25).reshape(2,3,4) arr4 array([[[ 1, 2, 3, 4], [ 5, 6, 7, 8], [ 9, 10, 11, 12]], [[13, 14, 15, 16], [17, 18, 19, 20], [21, 22, 23, 24]]]) arr4[1][2][2] # 23 arr4[1,1,1] #18 arr3[1,1,] # array([17,18,19,20]) arr4[1,1,::] # 同上 arr4[1,1,::-1] # array([20, 19, 18, 17]) arr4[0,1:3] #array([[ 5, 6, 7, 8], #[ 9, 10, 11, 12]]) arr4[:1,1] #array([ 6, 18]) b[1,:,2] #array([15, 19, 23]) b[1,...] #array([[13, 14, 15, 16], # [17, 18, 19, 20], # [21, 22, 23, 24]]) b[0,::-1,-1] #array([12, 8, 4]) b[:,:,-1][::-1][:,-1] #array([24, 12])python的五大特點(diǎn)是什么
python的五大特點(diǎn):1.簡(jiǎn)單易學(xué),開(kāi)發(fā)程序時(shí),專(zhuān)注的是解決問(wèn)題,而不是搞明白語(yǔ)言本身。2.面向?qū)ο?,與其他主要的語(yǔ)言如C++和Java相比, Python以一種非常強(qiáng)大又簡(jiǎn)單的方式實(shí)現(xiàn)面向?qū)ο缶幊獭?.可移植性,Python程序無(wú)需修改就可以在各種平臺(tái)上運(yùn)行。4.解釋性,Python語(yǔ)言寫(xiě)的程序不需要編譯成二進(jìn)制代碼,可以直接從源代碼運(yùn)行程序。5.開(kāi)源,Python是 FLOSS(自由/開(kāi)放源碼軟件)之一。
上述內(nèi)容就是使用python怎么實(shí)現(xiàn)numpy數(shù)組的索引和切片操作,你們學(xué)到知識(shí)或技能了嗎?如果還想學(xué)到更多技能或者豐富自己的知識(shí)儲(chǔ)備,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。
網(wǎng)站標(biāo)題:使用python怎么實(shí)現(xiàn)numpy數(shù)組的索引和切片操作-創(chuàng)新互聯(lián)
標(biāo)題URL:http://www.rwnh.cn/article42/doedec.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供用戶(hù)體驗(yàn)、動(dòng)態(tài)網(wǎng)站、網(wǎng)頁(yè)設(shè)計(jì)公司、移動(dòng)網(wǎng)站建設(shè)、電子商務(wù)、軟件開(kāi)發(fā)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀(guān)點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話(huà):028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容