Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/284.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.float和numpy.float64之间的差异_Python_Numpy_Types - Fatal编程技术网

Python numpy.float和numpy.float64之间的差异

Python numpy.float和numpy.float64之间的差异,python,numpy,types,Python,Numpy,Types,numpy.float和numpy.float64之间似乎有细微的区别 >>> import numpy as np >>> isinstance(2.0, np.float) True >>> isinstance(2.0, np.float64) False 有人能澄清一下吗?感谢这似乎就是32位浮点数和64位浮点数之间的区别(在C中,浮点数和双精度浮点数),2.0最终是32位浮点数。np.float是pythonfloat类型的别名。

numpy.float和numpy.float64之间似乎有细微的区别

>>> import numpy as np
>>> isinstance(2.0, np.float)
True
>>> isinstance(2.0, np.float64)
False

有人能澄清一下吗?感谢

这似乎就是32位浮点数和64位浮点数之间的区别(在C中,浮点数和双精度浮点数),2.0最终是32位浮点数。

np.float
是python
float
类型的别名。
np.float32
np.float64
是特定于numpy的32位和64位浮点类型

float?
Init signature: float(self, /, *args, **kwargs)
Docstring:     
float(x) -> floating point number

Convert a string or number to a floating point number, if possible.
Type:           type

np.float?
Init signature: np.float(self, /, *args, **kwargs)
Docstring:     
float(x) -> floating point number

Convert a string or number to a floating point number, if possible.
Type:           type

np.float32?
Init signature: np.float32(self, /, *args, **kwargs)
Docstring:      32-bit floating-point number. Character code 'f'. C float compatible.
File:           c:\python\lib\site-packages\numpy\__init__.py
Type:           type

np.float64?
Init signature: np.float64(self, /, *args, **kwargs)
Docstring:      64-bit floating-point number. Character code 'd'. Python float compatible.
File:           c:\python\lib\site-packages\numpy\__init__.py
Type:           type
因此,当您执行
isinstance(2.0,np.float)
时,它相当于
isinstance(2.0,float)
,因为2.0是一个普通的python内置浮点类型。。。而不是努比类型


isinstance(np.float64(2.0),np.float64)
显然是
True

numpy.float
是Python的float类。你的意思是结尾带下划线的
numpy.float
?这与
numpy.float64
相同。我的意思是不带下划线的numpy.float。你能详细阐述一下你的评论吗,也许可以作为一个答案?对不起,我不得不投反对票:你的答案似乎错了。下面是我刚才尝试的:isinstance(1e200,np.float64),它给出false。此外,iInstance(2.0,np.float32)也给出了false。