Python numpy数组创建函数详解

需积分: 11 0 下载量 98 浏览量 更新于2024-08-05 收藏 51KB DOC 举报
本文档主要介绍了如何在Python编程中利用numpy库进行数组的创建,特别是关注于三个核心的生成数组函数:`empty()`, `empty_like()`, 和 `eye()`。 首先,`empty(shape[, dtype, order])` 函数用于根据给定的形状和数据类型创建一个新的空数组。它接受三个可选参数: 1. `shape`:一个整数或整型元组,定义了数组的维度。 2. `dtype`:数据类型,可以指定数组元素的类型,默认情况下可能是随机生成的数值。 3. `order`:规定数组元素在内存中的存储顺序,可以是 'C'(按行存储,类似C语言)或 'F'(按列存储,类似Fortran语言)。 示例代码展示了如何创建一个2x2的空数组,以及一个全为整数的空数组: ```python >>> np.empty([2, 2]) array([[-9.74499359e+001, 6.69583040e-309], [2.13182611e-314, 3.06959433e-309]]) >>> np.empty([2, 2], dtype=int) array([[-1073741821, -1067949133], [496041986, 19249760]]) ``` 接下来,`empty_like(a)` 函数根据已有的数组 `a` 的形状和类型来创建一个新的空数组。这个函数非常实用,当你需要根据已有结构创建相似形状和类型的数组时,可以避免手动指定每个参数。 ```python >>> a = np.array([[1., 2., 3.], [4., 5., 6.]]) >>> np.empty_like(a) array([[-2.00000715e+000, 1.48219694e-323, -2.00000572e+000], [4.38791518e-305, -2.00000715e+000, 4.17269252e-309]]) ``` 最后,`eye(N[, M, k, dtype])` 生成一个对角线元素为1,其他元素为0的二维数组。此函数的关键参数有: 1. `N`:数组的行数。 2. `M`:列数,默认与`N`相同。 3. `k`:对角线序列号,0表示主对角线,正数为上三角,负数为下三角。 4. `dtype`:数据类型,定义数组的元素类型。 例如,创建一个3x3的单位矩阵: ```python >>> np.eye(3) array([[1., 0., 0.], [0., 1., 0.], [0., 0., 1.]]) ``` 通过这些函数,开发者可以方便地在Python编程中快速生成不同形状、类型和结构的数组,这对于数据分析、科学计算和机器学习等领域的工作非常有用。理解并熟练运用这些numpy函数将大大提高开发效率。