Numpy issubdtype给出“ TypeError:数据类型不被理解”

时间:2018-11-05 15:35:52

标签: python python-2.7 numpy

我正在运行python 2.7和numpy 1.15。

我得到:

>>> import numpy as np
>>> np.issubdtype(4, float)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/Users/brianp/work/cyan/venv/lib/python2.7/site-packages/numpy/core/numerictypes.py", line 714, in issubdtype
    arg1 = dtype(arg1).type
TypeError: data type not understood

是否进行了某些更改,使其曾经可以使用值,但现在仅适用于类型?

按照下面的答案:

>>> np.issubdtype(4, np.float)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/Users/brianp/work/cyan/venv/lib/python2.7/site-packages/numpy/core/numerictypes.py", line 714, in issubdtype
    arg1 = dtype(arg1).type
TypeError: data type not understood

我应该添加

>>> np.issubdtype(type(4), np.float)
False

可以使用...,但是无需type()即可使用的代码...

1 个答案:

答案 0 :(得分:0)

首先使用numpy类型。然后您要比较dtype,而不是实际值。

>>> np.issubdtype(np.float, np.float)
True

您不能比较变量,只能比较类型。