在 Python 中,可以使用切片來訪問二維數組中的子數組。二維數組的切片規則如下:
對于二維數組 a,可以使用 a[m:n, p:q] 來切片,其中 m 和 n 表示切片的行范圍,p 和 q 表示切片的列范圍。
如果省略 m,表示從第一行開始切片;如果省略 n,表示切片到最后一行;如果省略 p,表示從第一列開始切片;如果省略 q,表示切片到最后一列。
切片的范圍是左閉右開的,即包含起始行和列,但不包含結束行和列。
可以使用負數索引來表示倒數的行和列,例如 a[-1, -1] 表示最后一行最后一列的元素。
通過切片操作獲取的子數組是原數組的視圖,即對子數組的修改會影響原數組的內容。
例如,對于一個二維數組 a = [[1, 2, 3], [4, 5, 6], [7, 8, 9]],可以使用如下方式進行切片操作:
sub_array = a[0:2, 1:3] # 獲取第1行至第2行、第2列至第3列的子數組
print(sub_array)
# 輸出 [[2, 3], [5, 6]]
sub_array = a[:, 1:] # 獲取所有行的第2列之后的子數組
print(sub_array)
# 輸出 [[2, 3], [5, 6], [8, 9]]
sub_array = a[-1:, -2:] # 獲取最后一行的倒數第2列及之后的子數組
print(sub_array)
# 輸出 [[8, 9]]
這些是 Python 中二維數組切片的基本規則,可以根據具體的需求靈活運用。