Python 如何检查一个数字是np.float64还是np.float32或np.float16?

Python 如何检查一个数字是np.float64还是np.float32或np.float16?,python,numpy,Python,Numpy,除了使用一组or语句之外 isinstance(x,np.float64)或isinstance(x,np.float32)或isinstance(np.float16) 是否有更干净的方法来检查变量是否为浮动类型?您可以使用np。浮动: In [11]: isinstance(np.float16(1), np.floating) Out[11]: True In [12]: isinstance(np.float32(1), np.floating) Out[12]: True In [

除了使用一组or语句之外

isinstance(x,np.float64)
isinstance(x,np.float32)
isinstance(np.float16)


是否有更干净的方法来检查变量是否为浮动类型?

您可以使用
np。浮动

In [11]: isinstance(np.float16(1), np.floating)
Out[11]: True

In [12]: isinstance(np.float32(1), np.floating)
Out[12]: True

In [13]: isinstance(np.float64(1), np.floating)
Out[13]: True
注意:非numpy类型返回False:

In [14]: isinstance(1, np.floating)
Out[14]: False

In [15]: isinstance(1.0, np.floating)
Out[15]: False
要包含更多类型,例如python浮点,可以在iInstance中使用元组:

In [16]: isinstance(1.0, (np.floating, float))
Out[16]: True

在@MohitBhasi上查看第二个答案,我认为这是关于尺寸信息而不是数据类型的。谢谢!这已经困扰了我一段时间了。这正是我想要的