二維串列(或稱二維列表)在 Python 中是一種用來表示矩陣、表格或其他多維數據結構的形式。你可以將它想像成一個包含多個「一維串列」的串列,每個「一維串列」代表一行。
如何創建二維串列
以下是幾種常見的創建方法:
1. 手動創建
這是一種直接創建二維串列的方法:
# 建立一個 3x3 的二維串列
matrix = [
[1, 2, 3],
[4, 5, 6],
[7, 8, 9]
]
print(matrix)
輸出:
[[1, 2, 3], [4, 5, 6], [7, 8, 9]]
2. 使用 for 迴圈創建
當需要一個具有預定大小的二維串列時,可以使用迴圈來創建:
# 創建一個 3x3,初始值為 0 的二維串列
rows, cols = 3, 3
matrix = [[0 for _ in range(cols)] for _ in range(rows)]
print(matrix)
輸出:
[[0, 0, 0], [0, 0, 0], [0, 0, 0]]
訪問和修改二維串列元素
你可以通過行和列的索引來訪問或修改二維串列中的元素。
訪問元素
# 訪問 matrix 的第一行第二個元素(索引從 0 開始)
print(matrix[0][1]) # 輸出 2
修改元素
# 將 matrix 的第二行第三個元素改為 10
matrix[1][2] = 10
print(matrix)
輸出:
[[1, 2, 3], [4, 5, 10], [7, 8, 9]]
遍歷二維串列
可以使用嵌套的 for 迴圈來遍歷二維串列中的所有元素。
for row in matrix:
for element in row:
print(element, end=' ')
print() # 換行
輸出:
1 2 3
4 5 10
7 8 9
常見操作範例
1. 創建 5x5 的單位矩陣
size = 5
identity_matrix = [[1 if i == j else 0 for j in range(size)] for i in range(size)]
for row in identity_matrix:
print(row)
輸出:
[1, 0, 0, 0, 0]
[0, 1, 0, 0, 0]
[0, 0, 1, 0, 0]
[0, 0, 0, 1, 0]
[0, 0, 0, 0, 1]
2. 初始化 3x4 的串列並填滿 1 到 12 的數字
rows, cols = 3, 4
matrix = [[cols * i + j + 1 for j in range(cols)] for i in range(rows)]
for row in matrix:
print(row)
輸出:
[1, 2, 3, 4]
[5, 6, 7, 8]
[9, 10, 11, 12]
總結
二維串列是一種靈活且易於操作的數據結構,適合表示各種表格或矩陣形式的數據。在 Python 中,可以輕鬆地創建、訪問、修改和遍歷二維串列,使其非常適合用於處理圖形、表格數據和多維資料。
沒有留言:
張貼留言