Numpy empty() 函数
Numpy 的 empty() 函数创建一个具有指定形状和数据类型的新数组,而不初始化其元素,这意味着该数组可以包含任意值。
在 NumPy 中,numpy.zeros() 和 numpy.empty() 都用于创建数组。但是,与 numpy.zeros() 不同,numpy.empty() 函数不会将其元素初始化为零。相反,它会保留数组元素的未初始化状态,这意味着它们可能包含内存中已经存在的任意值。
由于 numpy.empty() 跳过了初始化步骤,因此它通常比 numpy.zeros() 更快。
语法
以下是 Numpy empty() 函数的语法 -
numpy.empty(shape, dtype=float, order='C', like=None)
参数
以下是 Numpy empty() 函数的参数 -
- shape:可以是整数,也可以是包含整数值的元组,用于定义数组的维度。
- dtype(可选):数据类型根据输入数据推断得出。默认情况下,数据类型为浮点型。
- order(可选):是否使用行优先(C 语言风格)或列优先(Fortran 语言风格)内存表示。默认为 C。
- like(可选):它允许创建一个与输入对象类似但使用现有类数组对象(例如另一个 NumPy 数组)的数组。
返回值
此函数返回一个包含给定形状、数据类型和顺序的未初始化数据的数组。
示例
以下是使用 Numpy numpy.empty() 函数创建包含未初始化值的 Numpy 数组的基本示例 -
import numpy as np # 创建一个包含未初始化元素的浮点数组 my_Array = np.empty(5) print('Float Array - ') print(my_Array)
输出
以下是上述代码的输出 -
Float Array - [4.66758713e-310 0.00000000e+000 4.51926407e-090 9.06967092e-307 2.37151510e-322]
示例:使用 empty() 函数创建多维数组
我们可以通过将一个包含两个数值的元组作为参数传递给 numpy.empty() 函数来创建一个 n 维 NumPy 数组。这里,我们通过将 (3,3) 作为参数传递给 numpy.empty() 函数创建了一个空的二维数组 -
import numpy as np # 创建一个包含未初始化元素的二维数组 array1 = np.empty((3,3)) print('2D Array: ',array1)
输出
以下是上述代码的输出 -
2D Array: [[4.68125865e-310 0.00000000e+000 1.14490784e+243] [1.66039930e+243 2.11774109e+161 4.68048625e-310] [4.68064641e-310 4.68064641e-310 4.68064641e-310]]
示例:创建一个"int"类型的 Numpy 数组
要创建一个 int 类型的空数组,我们需要将参数 dtype 设置为 int。在以下示例中,我们创建了一个未初始化的 integer 类型的 Numpy 数组 -
import numpy as np # 创建一个包含未初始化元素的二维数组 array1 = np.empty((3,3),dtype='int') print('2D Array: ',array1)
输出
以下是上述代码的输出 -
2D Array: [[ 94394871117444 0 8243124926671953966] [8245844963264382496 7020584407107852576 94416268780909] [ 94417762861968 94417762862192 94417762862288]]
numpy_array_creation_routines.html