我正在运行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()
即可使用的代码...
答案 0 :(得分:0)
首先使用numpy类型。然后您要比较dtype,而不是实际值。
>>> np.issubdtype(np.float, np.float)
True
您不能比较变量,只能比较类型。