Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/358.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何获取有效Numpy数据类型的范围?_Python_Numpy_Types - Fatal编程技术网

Python 如何获取有效Numpy数据类型的范围?

Python 如何获取有效Numpy数据类型的范围?,python,numpy,types,Python,Numpy,Types,我感兴趣的是找到一个特定的Numpy类型(例如,np.int64,np.uint32,np.float32,等等)所有可能的有效值的范围是什么(例如,np.int32最多可以存储2**31-1)。当然,我想理论上可以为每种类型找出这一点,但有没有办法在运行时做到这一点,以确保代码更具可移植性?引用numpy讨论列表: That information is available via numpy.finfo() and numpy.iinfo(): In [12]: finfo('d').ma

我感兴趣的是找到一个特定的Numpy类型(例如,
np.int64
np.uint32
np.float32
,等等)所有可能的有效值的范围是什么(例如,
np.int32
最多可以存储
2**31-1
)。当然,我想理论上可以为每种类型找出这一点,但有没有办法在运行时做到这一点,以确保代码更具可移植性?

引用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
链接。

您可以使用查找整型
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)和
分辨率
(arg类型的近似十进制数分辨率)