numpy.floatとnumpy.float64には微妙な違いがあるようです。numpy.floatとnumpy.float64の違い
>>> import numpy as np
>>> isinstance(2.0, np.float)
True
>>> isinstance(2.0, np.float64)
False
誰かがこれを明確にすることはできますか?ありがとう
numpy.floatとnumpy.float64には微妙な違いがあるようです。numpy.floatとnumpy.float64の違い
>>> import numpy as np
>>> isinstance(2.0, np.float)
True
>>> isinstance(2.0, np.float64)
False
誰かがこれを明確にすることはできますか?ありがとう
np.float
は、python float
タイプのエイリアスです。 np.float32
およびnp.float64
は、numpy固有の32および64ビット浮動小数点型です。あなたがisinstance(2.0, np.float)
を行う際
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
したがって、それは2.0としてisinstance(2.0, float)
に相当し、プレーンfloat型で、内蔵のpython ...とないnumpyのタイプがあります。
は、明らかにTrue
である。
これは、32ビット浮動小数点数と64ビット浮動小数点数の違い(Cではfloatとdouble)が異なるように見えますが、2.0は32ビットの浮動小数点数になりますポイント番号。
申し訳ありませんが、私はdownvoteする必要があります:あなたの答えは間違っているようです。私がちょうど試したことがここにあります:isinstance(1e200、np.float64)。これはfalseを与えます。また、isinstance(2.0、np.float32)もfalseを返します。 – zell
'numpy.float'はPythonのfloatクラスです。最後にアンダースコアで 'numpy.float_'を意味しますか?これは 'numpy.float64'と同じです。 – kennytm
私はアンダースコアのないnumpy.floatを意味しました。あなたはあなたのコメントを精緻化しますか、多分答えになりますか? – zell