首页 > 解决方案 > 为什么要使用 numpy.zeros((2,2)) 而不是 numpy.zeros(2,2) 创建 2x2 零矩阵?

问题描述

根据我在网上阅读的内容,我了解到这是因为它是一个元组,但是在这种情况下,将元组定义为对象的集合是没有意义的。我是不是遇到了错误的原因?如果没有,有人可以举例说明吗?

我正在使用 numpy。

w = numpy.zeros((2,2))

使用单组括号时收到的错误消息是:“TypeError:数据类型不理解。”

标签: pythonnumpytuples

解决方案


numpy文档(https://docs.scipy.org/doc/numpy-1.15.0/reference/generated/numpy.zeros.html):

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

第一个参数是矩阵的形状,数据类型为第二个。当您仅使用一组括号输入时,它的形状为 be2并且 dtype 也为 be 2,这就是为什么它抱怨无法识别数据类型(因为2不是数据类型)。


推荐阅读