请求协助理解并修正:实现获取NumPy数组形状、维度、大小的函数
问题修正与解释
你的代码存在两个核心问题:
- 直接硬编码了形状、维度和大小的固定值,没有从传入的NumPy数组中动态获取信息
- 调用
collect_info()时未传入任何参数,不符合函数定义的参数要求,会触发参数缺失错误
修正后的代码
import numpy as np def collect_info(array): # 从传入的数组中动态获取属性 shape = array.shape dimensions = array.ndim size = array.size return f'Shape: {shape}; dimensions: {dimensions}; size: {size}' # 示例调用:传入一个3维NumPy数组 test_array = np.array([[[1,2,3],[4,5,6]],[[7,8,9],[10,11,12]]]) print(collect_info(test_array))
关键说明
array.shape:返回数组的形状,是一个元组,表示各维度的长度array.ndim:返回数组的维度数量array.size:返回数组中元素的总个数,等于各维度长度的乘积
运行示例代码会输出:Shape: (2, 2, 3); dimensions: 3; size: 12,完全符合任务要求。
内容的提问来源于stack exchange,提问作者Asterix
相关产品推荐
相关产品推荐

