如何检查数字是np.float64还是np.float32或np.float16? [英] How to check if a number is a np.float64 or np.float32 or np.float16?

查看:1536
本文介绍了如何检查数字是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屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆