透過巢狀列表可用於初始化二維陣列。以下是一個範例:
two_d_array = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
print(two_d_array)
# 輸出: [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
這樣會創建一個 3x3 陣列,使用巢狀列表。
List comprehensions 提供了更簡潔的方式:
rows, cols = 3, 3
two_d_array = [[0 for j in range(cols)] for i in range(rows)]
print(two_d_array)
# 輸出: [[0, 0, 0], [0, 0, 0], [0, 0, 0]]
這將初始化一個所有元素均為零的 3x3 二維陣列。
您可以通過指定行和列存取元素
two_d_array = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
element = two_d_array[1][2]
print(element)
# 輸出: 6
此代碼存取第二行,第三列的元素。
修改二維陣列與存取它類似
two_d_array[1][2] = 10
print(two_d_array)
# 輸出: [[1, 2, 3], [4, 5, 10], [7, 8, 9]]
此代碼修改第二行,第三列的值為 10。
您可以使用巢狀迴圈高效迭代二維陣列
for row in two_d_array:
for element in row:
print(element, end=" ")
print()
# 輸出:
1 2 3
4 5 10
7 8 9
此代碼按行打印所有元素。
您可以使用 list comprehension 將二維陣列展平為一維陣列
flat_array = [element for row in two_d_array for element in row]
print(flat_array)
# 輸出: [1, 2, 3, 4, 5, 10, 7, 8, 9]
cols = 3
two_d_array = [flat_array[i:i+cols] for i in range(0, len(flat_array), cols)]
print(two_d_array)
# 輸出: [[1, 2, 3], [4, 5, 10], [7, 8, 9]]
[Python] 通過各種實例深入理解位元運算符 |
---|
[Python] 通過各種實例深入理解關係運算符 |
[Python] 解決 'zsh: command not found: python' 錯誤的方法 |
[Python] 通過各種實例深入理解賦值運算符 |
[Python] 通過各種實例深入理解算術運算符 |
CloneCoding
創新從一行代碼開始!