Python 创建数组


创建一个 NumPy ndarray 对象

NumPy 用于处理数组。 NumPy 中的数组对象被称为ndarray

我们可以创建一个 NumPyndarray对象通过使用array()功能。

示例

import numpy as np

arr = np.array([1, 2, 3, 4, 5])

print(arr)

print(type(arr))
亲自试一试 »

类型():这个内置的 Python 函数告诉我们传递给它的对象的类型。就像上面的代码一样,它表明arrnumpy.ndarray类型。

创建一个ndarray,我们可以将列表、元组或任何类似数组的对象传递给array()方法,它会被转换成ndarray:

示例

使用元组创建 NumPy 数组:

import numpy as np

arr = np.array((1, 2, 3, 4, 5))

print(arr)
亲自试一试 »

数组的维度

数组中的维度是数组深度的一层(嵌套数组)。

嵌套数组:是以数组为元素的数组。



0 维数组

0 维数组或标量是数组中的元素。数组中的每个值都是一个 0 维数组。

示例

创建一个值为 42 的 0 维数组

import numpy as np

arr = np.array(42)

print(arr)
亲自试一试 »

一维数组

以 0 维数组作为元素的数组称为一维或一维数组。

这些是最常见和基本的数组。

示例

创建一个包含值 1,2,3,4,5 的一维数组:

import numpy as np

arr = np.array([1, 2, 3, 4, 5])

print(arr)
亲自试一试 »

二维数组

以一维数组作为元素的数组称为二维数组。

这些通常用于表示矩阵或二阶张量。

NumPy 有一个专门用于矩阵运算的完整子模块,称为numpy.mat

示例

创建一个包含两个数组的二维数组,其值为 1,2,3 和 4,5,6:

import numpy as np

arr = np.array([[1, 2, 3], [4, 5, 6]])

print(arr)
亲自试一试 »

3-D 阵列

以 2 维数组(矩阵)为元素的数组称为 3 维数组。

这些通常用于表示三阶张量。

示例

创建一个包含两个 2-D 数组的 3-D 数组,这两个数组都包含两个值为 1,2,3 和 4,5,6 的数组:

import numpy as np

arr = np.array([[[1, 2, 3], [4, 5, 6]], [[1, 2, 3], [4, 5, 6]]])

print(arr)
亲自试一试 »

检查维数?

NumPy 数组提供了ndim返回一个整数的属性,该整数告诉我们数组有多少维。

示例

检查数组有多少维:

import numpy as np

a = np.array(42)
b = np.array([1, 2, 3, 4, 5])
c = np.array([[1, 2, 3], [4, 5, 6]])
d = np.array([[[1, 2, 3], [4, 5, 6]], [[1, 2, 3], [4, 5, 6]]])

print(a.ndim)
print(b.ndim)
print(c.ndim)
print(d.ndim)
亲自试一试 »

高维数组

数组可以有任意数量的维度。

创建数组时,您可以使用以下命令定义维数:ndmin参数。

示例

创建一个 5 维数组并验证它是否具有 5 维:

import numpy as np

arr = np.array([1, 2, 3, 4], ndmin=5)

print(arr)
print('number of dimensions :', arr.ndim)
亲自试一试 »

在此数组中,最里面的维度(第 5 个维度)有 4 个元素,第 4 个维度有 1 个元素,即向量,第 3 个维度有 1 个元素,即带有向量的矩阵,第 2 个维度有 1 个元素,即 3D 数组,第一个维度有 1 个 4D 数组元素。


通过练习测试一下

练习:

插入创建 NumPy 数组的正确方法。

arr = np.([1, 2, 3, 4, 5])

开始练习