在Python中,如果不检查每个整数类型(即'int'
、'numpy.int32'
或'numpy.int64'
),如何检查数字的类型是否为整数?
我想尝试if int(val) == val
,但当浮点设置为整数值(不是类型)时,这不起作用。
In [1]: vals = [3, np.ones(1, dtype=np.int32)[0], np.zeros(1, dtype=np.int64)[0], np.ones(1)[0]]
In [2]: for val in vals:
...: print(type(val))
...: if int(val) == val:
...: print('{} is an int'.format(val))
<class 'int'>
3 is an int
<class 'numpy.int32'>
1 is an int
<class 'numpy.int64'>
0 is an int
<class 'numpy.float64'>
1.0 is an int
我想过滤掉最后一个值,它是一个numpy.float64
。
目前没有回答
相关问题 更多 >
编程相关推荐