Python陣列迭代程式
陣列是一種資料結構,由一組相同資料型別的元素(值)組成,每個元素都由一個索引值標識。可以使用其索引號直接訪問元素。
Python中的陣列
Python沒有原生陣列資料結構。相反,我們可以使用列表資料結構、NumPy或array模組。
這裡我們將使用列表作為陣列:
[10, 4, 11, 76, 99] 0 1 2 3 4
上面的陣列有5個元素,每個元素都由一個索引值標識,從0到n-1,其中n是元素的總數。
遍歷陣列意味著逐個訪問陣列元素。在下面的文章中,我們將看到在Python中遍歷陣列的多種方法。
使用For迴圈
這是在Python程式設計中迭代陣列最簡單的方法。這裡的for迴圈迭代所有陣列元素。
示例
在這個例子中,變數ele是迴圈變數,它儲存對應於每次迭代的元素。這裡我們不需要使用索引號逐個訪問元素,而只需迴圈遍歷並顯示輸出中的陣列元素。
lst = [1, 2, 3, 4, 5, 6] print ("The original array is: ",lst) # iterate over an array using the for loop print("Iterate Over an Array: ") for ele in lst: print(ele)
輸出
The original array is: [1, 2, 3, 4, 5, 6] Iterate Over an Array: 1 2 3 4 5 6
在上面的例子中,使用for迴圈逐個迭代陣列元素。
示例
在這個例子中,我們將使用for迴圈和range()函式一起迭代陣列元素。
lst = [1, 2, 3, 4, 5, 6] print ("The original array is: ",lst) # iterate over an array using the for loop print("Iterate Over an Array: ") for i in range(len(lst)): print(lst[i])
輸出
The original array is: [1, 2, 3, 4, 5, 6] Iterate Over an Array: 1 2 3 4 5 6
這裡,變數“i”從0變化到length(array)-1,它表示陣列元素的索引。
示例
在這個例子中,我們將使用一個字串陣列,並將使用for迴圈迭代所有字串元素。
lst = ['P', 'y', 't', 'h', 'o', 'n'] print ("The original array is: ",lst) # iterate over an array using the for loop print("Iterate Over an Array: ") for i in range(len(lst)): print(lst[i])
輸出
The original array is: ['P', 'y', 't', 'h', 'o', 'n'] Iterate Over an Array: P y t h o n
使用While迴圈
使用while迴圈可以迭代陣列元素。在Python中,while迴圈重複生成迭代,直到滿足給定條件。
示例
在這個例子中,條件I < len(lest)被執行以迭代所有陣列元素。
lst = [1, 2, 3, 4, 5, 6] print ("The original array is: ",lst) # iterate over an array using the While loop print("Iterate Over an Array: ") i = 0 while i< len(lst): print(lst[i]) i += 1
輸出
The original array is: [1, 2, 3, 4, 5, 6] Iterate Over an Array: 1 2 3 4 5 6
注意:如果忘記增加索引值(i += 1),while迴圈將變成無限迴圈。
使用Enumerate()
Enumerate()是Python內建函式,它接受一個類似陣列的可迭代物件,並返回一個元組,其中包含一個計數和從可迭代物件迭代中獲得的值。以下是此方法的語法:
enumerate(iterable, start=0)
其中,
Iterable – 一個可迭代物件(列表、字串等)。
Start – 一個數字,預設值為0。
示例
在這個例子中,我們將使用enumerate()函式顯示元素及其對應的索引值。
lst = [1, 2, 3, 4, 5, 6] print ("The original array is: ",lst) # iterate over an array using the for loop and enumerate() function print("Iterate Over an Array: ") for i, ele in enumerate(lst): print(i, ':', ele)
輸出
The original array is: [1, 2, 3, 4, 5, 6] Iterate Over an Array: 0 : 1 1 : 2 2 : 3 3 : 4 4 : 5 5 : 6
這些是在Python中迭代陣列的幾種方法。