詳解Python如何循環(huán)遍歷Numpy中的Array
1. 引言
Numpy是Python中常見的數(shù)據(jù)處理庫(kù)。Numpy是 Numerical Python的縮寫,它是數(shù)據(jù)科學(xué)中經(jīng)常使用的庫(kù)。Numpy專門用于處理矩陣運(yùn)算,因?yàn)樗魇礁鳂拥奶幚砗瘮?shù)。在本文中,我們主要用于學(xué)習(xí)如何迭代遍歷訪問矩陣中的元素。
閑話少說(shuō),我們直接開始吧!
2. 使用For循環(huán)遍歷
首先我們來(lái)看個(gè)例子,使用循環(huán)來(lái)遍歷數(shù)組,樣例代碼如下:
import numpy as np
array = np.array([1, 2, 3, 4, 5, 6])
for x in array:
print(x)
Output:
1
2
3
4
5
6
在上面的例子中,我們創(chuàng)建了一個(gè)一維數(shù)組,并成功地遍歷訪問了每個(gè)值?,F(xiàn)在讓我們來(lái)看一個(gè)二維矩陣中的例子:
import numpy as np
array = np.array([[1, 2, 3], [4, 5, 6]])
for x in array:
for y in x:
print(y)
Output:
1
2
3
4
5
6
正如我們?cè)谏厦胬又兴吹降?,我們?nèi)匀荒軌虼蛴〕雒總€(gè)單獨(dú)的值。因?yàn)樗且粋€(gè)二維數(shù)組,所以我們必須使用兩個(gè)for循環(huán)來(lái)輸出每個(gè)單獨(dú)的值。這是我們通常迭代二維數(shù)組的方式,但NumPy為我們提供了新的函數(shù),使得迭代NumPy數(shù)組變得更容易。
3. 函數(shù) nditer()
函數(shù)nditer()主要用于循環(huán)遍歷整個(gè)數(shù)組,而無(wú)需為每個(gè)額外維度使用嵌套for循環(huán)。
我們不妨來(lái)看一個(gè)例子:
import numpy as np
array = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
for x in np.nditer(array):
print(x)
Output:
1
2
3
4
5
6
7
8
9
上述例子是一個(gè)二維的數(shù)組,我們使用函數(shù)nditer()后,我們不需要再使用嵌套的for循環(huán)。函數(shù)‘nditer()’成功地f訪問并打印了數(shù)組中的每個(gè)值。
我們不妨在來(lái)看一個(gè)三維數(shù)組的例子,樣例如下:
import numpy as np
array = np.array([[[1], [2]], [[3], [4]]])
for x in np.nditer(array):
print(x)
Output:
1
2
3
4
正如我們?cè)谏厦娴睦又兴吹降?,函?shù)nditer()成功地迭代了三維數(shù)組中的每個(gè)元素。
4. 函數(shù) ndenumerate()
接著我們來(lái)介紹函數(shù)ndenumerate(),該函數(shù)的作用是輸出相應(yīng)的索引號(hào)的對(duì)應(yīng)的值。
樣例代碼如下:
import numpy as np
array = np.array([1, 2, 3, 4, 5, 6])
for i, x in np.ndenumerate(array):
print(i, x)
Output:
(0,) 1
(1,) 2
(2,) 3
(3,) 4
(4,) 5
(5,) 6
正如上述例子中,我們?cè)诶ㄌ?hào)內(nèi)輸出了每個(gè)元素的索引號(hào)及其相應(yīng)的值。接著我們?cè)賮?lái)看一個(gè)二維矩陣的例子:
import numpy as np
array = np.array([[1, 2, 3], [4, 5, 6]])
for i, x in np.ndenumerate(array):
print(i, x)
Output:
(0, 0) 1
(0, 1) 2
(0, 2) 3
(1, 0) 4
(1, 1) 5
(1, 2) 6
在上述例子中,我們輸出的第一維表示每個(gè)元素的索引號(hào),第二維表示每個(gè)元素的值。
5. 結(jié)論
本文重點(diǎn)介紹了在Numpy中常用的兩個(gè)函數(shù)nditer()以及ndenumerate(),這兩個(gè)函數(shù)在高維數(shù)組中循環(huán)遍歷時(shí)非常有用,希望大家可以在日常工作中多多使用。
到此這篇關(guān)于詳解Python如何循環(huán)遍歷Numpy中的Array的文章就介紹到這了,更多相關(guān)Python遍歷Numpy Array內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Python numpy和matlab的幾點(diǎn)差異介紹
這篇文章主要介紹了Python numpy和matlab的幾點(diǎn)差異,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-07-07
tensorflow實(shí)現(xiàn)在函數(shù)中用tf.Print輸出中間值
今天小編就為大家分享一篇tensorflow實(shí)現(xiàn)在函數(shù)中用tf.Print輸出中間值,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-01-01
Python利用PyPDF2庫(kù)實(shí)現(xiàn)輕松提取PDF文本
ython中的PyPDF2庫(kù)是一個(gè)非常有用的工具,無(wú)論您是需要分析PDF文檔中的內(nèi)容還是需要在文檔中搜索特定的信息,PyPDF2都可以幫助您輕松實(shí)現(xiàn)這些任務(wù),下面我們就來(lái)學(xué)習(xí)一下如何利用PyPDF2提取PDF文本吧2023-09-09
PyTorch在Windows環(huán)境搭建的方法步驟
這篇文章主要介紹了PyTorch在Windows環(huán)境搭建的方法步驟,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-05-05
Python的Django中django-userena組件的簡(jiǎn)單使用教程
這篇文章主要介紹了Python的Django中django-userena組件的簡(jiǎn)單使用教程,包括用戶登陸和注冊(cè)等簡(jiǎn)單功能的實(shí)現(xiàn),需要的朋友可以參考下2015-05-05
Windows下創(chuàng)建定時(shí)任務(wù)執(zhí)行Python腳本的方法實(shí)現(xiàn)
Python定時(shí)任務(wù)執(zhí)行,本文主要介紹了Windows下創(chuàng)建定時(shí)任務(wù)執(zhí)行Python腳本的方法實(shí)現(xiàn),具有一定的參考價(jià)值,感興趣的可以了解一下2023-11-11
Python實(shí)現(xiàn)找出數(shù)組中第2大數(shù)字的方法示例
這篇文章主要介紹了Python實(shí)現(xiàn)找出數(shù)組中第2大數(shù)字的方法,涉及Python針對(duì)數(shù)組的排序、遍歷等相關(guān)操作技巧,需要的朋友可以參考下2018-03-03
matplotlib設(shè)置坐標(biāo)軸標(biāo)簽和間距的實(shí)現(xiàn)
本文主要介紹了matplotlib設(shè)置坐標(biāo)軸標(biāo)簽和間距的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-10-10

