Python numpy.float和numpy.float64之间的差异
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类型的别名。
>>> 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
类型的别名。
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。