如何检查数字是np.float64还是np.float32或np.float16? [英] How to check if a number is a np.float64 or np.float32 or np.float16?
本文介绍了如何检查数字是np.float64还是np.float32或np.float16?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
除了使用一组or语句之外
Other than using a set of or statements
isinstance( x, np.float64 )
或isinstance( x, np.float32 )
或isinstance( np.float16 )
是否有一种更干净的方法来检查变量是否为浮点型?
Is there a cleaner way to check of a variable is a floating type?
推荐答案
您可以使用np.floating
:
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
注意:非数字类型返回False:
Note: non-numpy types return False:
In [14]: isinstance(1, np.floating)
Out[14]: False
In [15]: isinstance(1.0, np.floating)
Out[15]: False
包含更多类型,例如python浮动,可以在isinstance中使用元组:
to include more types, e.g. python floats, you can use a tuple in isinstance:
In [16]: isinstance(1.0, (np.floating, float))
Out[16]: True
这篇关于如何检查数字是np.float64还是np.float32或np.float16?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文