在 Numpy 中返回一个对角线上为 1、其他位置为 0 的二维数组

numpyserver side programmingprogramming更新于 2025/9/2 21:37:17

numpy.eye() 返回一个对角线上为 1、其他位置为 0 的二维数组。其中,第一个参数表示"输出的行数",例如 4 表示 4x4 数组。第二个参数表示输出的列数。

函数 eye() 返回一个数组,其中除第 k 条对角线为 1 外,所有元素都为零。dtype 是返回数组的数据类型。order 表示输出在内存中是按行优先(C 语言风格)还是列优先(Fortran 语言风格)存储。

like 参数是一个引用对象,用于创建非 NumPy 数组。如果传入的类数组支持 __array_function__ 协议,则结果将由该协议定义。在这种情况下,它确保创建的数组对象与通过此参数传入的对象兼容。

步骤

首先,导入所需的库 −

import numpy as np

创建一个二维数组。numpy.eye() 返回一个二维数组,对角线为 1,其他位置为 0。这里,第一个参数表示"输出的行数",即 4 表示 4x4 数组。第二个参数表示输出的列数。如果为 None,则默认为第一个参数,即此处的 4x4。 −

arr = np.eye(4)

显示数组 −

print("数组...
", arr)

获取数组类型 −

print("
数组类型...
", arr.dtype)

获取数组的形状 −

print("
数组形状...
", arr.shape)

获取数组的维度 −

print("
数组维度...
",arr.ndim)

获取数组元素数量 −

print("
数组(元素数量)...
",arr.size)

示例

import numpy as np

# 创建二维数组
# numpy.eye() 返回一个二维数组,对角线上为 1,其他位置为 0。
# 这里,第一个参数表示"输出的行数",例如 4 表示 4x4 数组。
# 第二个参数表示输出的列数。如果为 None,则默认为第一个参数,即此处的 4x4 数组。
arr = np.eye(4)

# 显示数组
print("数组...
", arr) # 获取数组的类型 print("
数组类型...
", arr.dtype) # 获取数组的形状 print("
数组形状...
", arr.shape) # 获取数组的维度 print("
数组维度...
",arr.ndim) # 获取数组元素的数量 print("
Array (count of elements)...
",arr.size)

输出

数组...
[[1. 0. 0. 0.]
[0. 1. 0. 0.]
[0. 0. 1. 0.]
[0. 0. 0. 1.]]

数组类型...
float64

数组形状...
(4, 4)

数组维度...
2

Array (count of elements)...
16

相关文章