2024-05-14 15:55:37 发布
网友
我感兴趣的是找到一个特定的Numpy类型(例如np.int64,np.uint32,np.float32,等等),所有可能的有效值的范围是什么(例如np.int32可以存储最多2**31-1)。当然,我想理论上可以为每种类型计算出这一点,但是有没有一种方法可以在运行时这样做,以确保代码的可移植性?
np.int64
np.uint32
np.float32
np.int32
2**31-1
可以使用^{}查找整数类型arg的最大值,使用^{}查找浮点类型arg的最大值。
arg
>>> numpy.iinfo(numpy.uint64).min 0 >>> numpy.iinfo(numpy.uint64).max 18446744073709551615L >>> numpy.finfo(numpy.float64).max 1.7976931348623157e+308 >>> numpy.finfo(numpy.float64).min -1.7976931348623157e+308
iinfo只提供min和max,但是finfo也提供有用的值,例如eps(可表示的最小数>;0)和resolution(类型arg的近似十进制数解析)。
iinfo
min
max
finfo
eps
resolution
引用一个numpy讨论列表:
That information is available via numpy.finfo() and numpy.iinfo(): In [12]: finfo('d').max Out[12]: 1.7976931348623157e+308 In [13]: iinfo('i').max Out[13]: 2147483647 In [14]: iinfo('uint8').max Out[14]: 255
链接here。
可以使用^{} 查找整数类型} 查找浮点类型
arg
的最大值,使用^{arg
的最大值。iinfo
只提供min
和max
,但是finfo
也提供有用的值,例如eps
(可表示的最小数>;0)和resolution
(类型arg
的近似十进制数解析)。引用一个numpy讨论列表:
链接here。
相关问题 更多 >
编程相关推荐