python numpy數(shù)組的索引和切片的操作方法
NumPy - 簡(jiǎn)介
NumPy 是一個(gè) Python 包。 它代表 “Numeric Python”。 它是一個(gè)由多維數(shù)組對(duì)象和用于處理數(shù)組的例程集合組成的庫(kù)。
Numeric,即 NumPy 的前身,是由 Jim Hugunin 開發(fā)的。 也開發(fā)了另一個(gè)包 Numarray ,它擁有一些額外的功能。 2005年,Travis Oliphant 通過將 Numarray 的功能集成到 Numeric 包中來創(chuàng)建 NumPy 包。 這個(gè)開源項(xiàng)目有很多貢獻(xiàn)者。
NumPy 操作
使用NumPy,開發(fā)人員可以執(zhí)行以下操作:
•數(shù)組的算數(shù)和邏輯運(yùn)算。
•傅立葉變換和用于圖形操作的例程。
•與線性代數(shù)有關(guān)的操作。 NumPy 擁有線性代數(shù)和隨機(jī)數(shù)生成的內(nèi)置函數(shù)。
numpy庫(kù)多維數(shù)組的類型和列表的類型非常類似,同樣有索引和切片功能:
索引:獲取數(shù)組中特定位置元素的過程
切片:獲取數(shù)組元素子集的過程
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] #左開右閉的區(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])
總結(jié)
以上所述是小編給大家介紹的python numpy數(shù)組的索引和切片的操作方法,希望對(duì)大家有所幫助,如果大家有任何疑問請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
相關(guān)文章
pymysql 開啟調(diào)試模式的實(shí)現(xiàn)
這篇文章主要介紹了pymysql 開啟調(diào)試模式的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-09-09python安裝virtualenv虛擬環(huán)境步驟圖文詳解
這篇文章主要介紹了python安裝virtualenv虛擬環(huán)境步驟,本文通過圖文并茂的形式給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2019-09-09一文教會(huì)你用nginx+uwsgi部署自己的django項(xiàng)目
uWSGI是一個(gè)Web服務(wù)器,它實(shí)現(xiàn)了WSGI協(xié)議、uwsgi、http等協(xié)議,下面這篇文章主要給大家介紹了關(guān)于用nginx+uwsgi部署自己的django項(xiàng)目的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),需要的朋友可以參考下2022-08-08python爬蟲實(shí)戰(zhàn)項(xiàng)目之爬取pixiv圖片
最近決定寫個(gè)P站的爬蟲,實(shí)際操作起來確實(shí)遇到了些新問題,通過解決也有所收獲,下面這篇文章主要給大家介紹了關(guān)于python爬蟲實(shí)戰(zhàn)項(xiàng)目之爬取pixiv圖片的相關(guān)資料,需要的朋友可以參考下2022-07-07PyCharm MySQL可視化Database配置過程圖解
這篇文章主要介紹了PyCharm MySQL可視化Database配置過程圖解,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-06-06Python虛擬環(huán)境的創(chuàng)建和使用詳解
這篇文章主要給大家介紹了關(guān)于Python虛擬環(huán)境的創(chuàng)建和使用的相關(guān)資料,文中通過圖文介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-09-09python實(shí)現(xiàn)文本進(jìn)度條 程序進(jìn)度條 加載進(jìn)度條 單行刷新功能
這篇文章主要介紹了python實(shí)現(xiàn)文本進(jìn)度條 程序進(jìn)度條 加載進(jìn)度條 單行刷新功能,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2019-07-07