NumPy 包提供了多种创建新 ndarray 对象的方法。以下是用于此目的的最常用函数的列表:

功能说明
empty()返回给定形状和类型的新数组,而不初始化条目。
ones()返回给定形状和类型的新数组,用 1 填充。
zeros()返回给定形状和类型的新数组,用 0 填充。

让我们详细讨论这些函数:

numpy.empty() 函数

NumPy empty() 函数返回指定形状和数据类型的新数组,其中包含未初始化的条目。

语法

numpy.empty(shape, dtype=float, order='C') 

参数

shape必填。 以int整数元组的形式指定返回数组的形状。
dtype可选。 指定数组所需的数据类型。默认值:浮动
order可选。 指定在内存中是否以行优先(C 风格)或列优先(Fortran 风格)顺序存储多维数据。两个可能的值是:C(C 风格)和 F(Fortran 风格)。默认值:'C'

示例

在下面的示例中,使用了empty()函数创建指定形状的未初始化(任意)数据的二维数组。

#未初始化(任意)数据的数组
import numpy as np
Arr = np.empty((2,2))
print(Arr) 

上述代码的输出将是:

[[  6.93360212e-310   6.93360212e-310]
 [  6.93359915e-310   6.93359743e-310]] 

numpy.zeros() 函数

NumPy zeros() 函数返回指定形状和数据类型的新数组,并用零填充。

语法

numpy.zeros(shape, dtype=float, order='C') 

参数

shape必填。 以int整数元组的形式指定返回数组的形状。
dtype可选。 指定数组所需的数据类型。默认值:浮动
order可选。 指定在内存中是否以行优先(C 风格)或列优先(Fortran 风格)顺序存储多维数据。两个可能的值是:C(C 风格)和 F(Fortran 风格)。默认值:'C'

示例

在下面的示例中,使用了zeros()函数创建指定形状的二维零数组。

#零数组
import numpy as np
Arr = np.zeros((2,3))
print(Arr) 

上述代码的输出将是:

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

示例

可以使用dtype参数提供返回数组的数据类型。

#dtype=复杂
import numpy as np
Arr = np.zeros((2,2), dtype=complex)
print(Arr) 

上述代码的输出将是:

[[ 0.+0.j  0.+0.j]
 [ 0.+0.j  0.+0.j]] 

numpy.ones() 函数

NumPy ones() 函数返回指定形状和数据类型的新数组,并用 1 填充。

语法

numpy.ones(shape, dtype=float, order='C') 

参数

shape必填。 以int整数元组的形式指定返回数组的形状。
dtype可选。 指定数组所需的数据类型。默认值:浮动
order可选。 指定在内存中是否以行优先(C 风格)或列优先(Fortran 风格)顺序存储多维数据。两个可能的值是:C(C 风格)和 F(Fortran 风格)。默认值:'C'

示例

在下面的示例中,使用了ones()函数创建指定形状的二维数组。

#数组
import numpy as np
Arr = np.ones((2,3))
print(Arr) 

上述代码的输出将是:

[[ 1.  1.  1.]
 [ 1.  1.  1.]] 

示例

自定义数据类型也可以使用 dtype 参数来使用。

#自定义数据类型
import numpy as np
Arr = np.ones((2,2), dtype=[('x', 'i4'), ('y', 'i4')])
print(Arr) 

上面的代码给出以下输出:

[[(1, 1) (1, 1)]
 [(1, 1) (1, 1)]]