在 Python 中宣告 3D 陣列

Muhammad Maisam Abbas 2023年1月30日
  1. 使用 Python 中的列表推導式宣告 3D 列表
  2. 在 Python 中使用乘法方法宣告 3D 列表
  3. 在 Python 中使用 NumPy 包宣告 3D 陣列
在 Python 中宣告 3D 陣列

在本教程中,我們將討論在 Python 中宣告三維陣列的方法。

使用 Python 中的列表推導式宣告 3D 列表

就基本功能而言,列表的功能與 Python 中的陣列相同。列表推導是一種對列表執行復雜操作的方法。列表推導也可以用於宣告 3D 陣列。以下程式碼示例向我們展示瞭如何使用列表推導式在 Python 中宣告 3D 陣列。

n = 3

distance = [[[0 for k in range(n)] for j in range(n)] for i in range(n)]

print(distance)

輸出:

[[[0, 0, 0], [0, 0, 0], [0, 0, 0]], [[0, 0, 0], [0, 0, 0], [0, 0, 0]], [[0, 0, 0], [0, 0, 0], [0, 0, 0]]]

在上面的程式碼中,我們首先宣告維數,然後使用列表推導式來初始化 n 維的列表。

在 Python 中使用乘法方法宣告 3D 列表

列表推導方法可以很好地工作,但是它有點程式碼擴充套件。如果要最小化程式碼,可以使用乘法。以下程式碼示例向我們展示瞭如何在 Python 中使用乘法方法宣告 3D 陣列。

distance = [[[0] * n] * n] * n

print(distance)

輸出:

[[[0, 0, 0], [0, 0, 0], [0, 0, 0]], [[0, 0, 0], [0, 0, 0], [0, 0, 0]], [[0, 0, 0], [0, 0, 0], [0, 0, 0]]]

上面的程式碼與列表推導功能相同,但是大大減少了程式碼。

在 Python 中使用 NumPy 包宣告 3D 陣列

如果要在 Python 中專門對陣列執行某些操作,則最好使用 NumPy 程式包。它是一個專門設計用於在 Python 中使用陣列的軟體包。

numpy 是一個外部軟體包,並未預裝 Python。使用它之前,我們需要先安裝它。下面給出了安裝 numpy 軟體包的命令。

pip install numpy

以下程式碼示例顯示瞭如何使用 NumPy 包在 Python 中宣告 3 維陣列。

import numpy as np

i = 3
j = 3
k = 3

new_array = np.zeros((i, j, k))

print(new_array)

輸出:

[[[0. 0. 0.]
  [0. 0. 0.]
  [0. 0. 0.]]

 [[0. 0. 0.]
  [0. 0. 0.]
  [0. 0. 0.]]

 [[0. 0. 0.]
  [0. 0. 0.]
  [0. 0. 0.]]]

在上面的程式碼中,我們首先使用 ijk 宣告陣列每個維度中的元素數。之後,我們將這些尺寸傳遞給 np.zeros() 以初始化 3D 陣列。np.zeros()方法給我們一個陣列,並用 0 填充每個元素。

Muhammad Maisam Abbas avatar Muhammad Maisam Abbas avatar

Maisam is a highly skilled and motivated Data Scientist. He has over 4 years of experience with Python programming language. He loves solving complex problems and sharing his results on the internet.

LinkedIn

相關文章 - Python List