浮動小数点数が32または64ビット(およびnumpy浮動小数点配列のビット数)であるかどうかをチェックしたいと思います。内蔵されているはずですが、見つけられませんでした。Pythonでfloatのサイズをチェックする方法は?
答えて
float
のサイズはsys.float_info
でリクエストできます。しかし、私は64ビット以外のものに遭遇したことはありませんでした。
NumPy配列のアイテムのサイズは異なる場合がありますが、a.itemsize
でサイズをバイト単位で確認できます。a
はNumPy配列です。
浮動小数点値の範囲は、sys.float_info
オブジェクトで使用できます。
Svenが述べているように、CPython float
は常に64ビットです。しかしPython's language referenceは、あなたが受け入れられた範囲のための基本となるマシンアーキテクチャ(とCまたはJava実装)のなすがままにされている... "
言う。
だから、これは必ずしも他の場合ではないですPythonの実装
OPはNumPyを使用しているので、他のPythonの実装についてはあまり気にしません。しかし、良い点。 :) –
numpy.finfoリストサイズとのfloat32の他の属性...、
NEXP含む:その符号及びバイアスなど指数のビット数
nmant:数仮数部のビット数。 IEEE-754 標準浮動小数点を持つマシンで
、
import numpy as np
for f in (np.float32, np.float64, float):
finfo = np.finfo(f)
print finfo.dtype, finfo.nexp, finfo.nmant
印刷され、例えば
float32 8 23
float64 11 52
float64 11 52
(あまりにもfloat16とfloat128を試してみてください。)
記号+1ビット – denfromufa
float16 \tハーフ精度浮動小数点:符号ビット、5ビット指数、10ビット仮数; float32 \t単精度浮動小数点:符号ビット、8ビット指数、23ビット仮数。 float64 \t倍精度浮動小数点:符号ビット、11ビット指数、52ビット仮数 – denfromufa
print numpy.finfo(numpy.float)
Machine parameters for float64
---------------------------------------------------------------------
precision= 15 resolution= 1.0000000000000001e-15
machep= -52 eps= 2.2204460492503131e-16
negep = -53 epsneg= 1.1102230246251565e-16
minexp= -1022 tiny= 2.2250738585072014e-308
maxexp= 1024 max= 1.7976931348623157e+308
nexp = 11 min= -max
---------------------------------------------------------------------
- 1. Python - sys.getsizeof()のint、floatなどのサイズ
- 2. Pythonでswig floatリファレンスを間接参照する方法は?
- 3. ValueErrorを処理する方法:Pythonのfloat()の無効なリテラル
- 4. Python 3でfloatの後の桁数を制限する方法は?
- 5. Pythonで文字列の形式をチェックする方法は?
- 6. Pythonでmysql接続の状態をチェックする方法は?
- 7. Pythonで辞書の値をチェックする方法は?
- 8. Pythonでインポートエイリアスの競合をチェックする方法は?
- 9. pythonソケットrecvfrom()データをチェックする方法
- 10. Pythonの構文チェック方法は?
- 11. JAXBを使用したJava Floatではなく、Scalaオプション[Float]としてFloatをアンマーシャリングする方法は?
- 12. サーバーがファイルを受信する前にファイルのサイズをチェックする方法は?
- 13. C++を使ってpythonのバージョンをチェックする方法は?
- 14. C++ float配列のサイズ
- 15. Pythonのdictで複数の値をチェックする方法
- 16. Pythonで待ち行列の長さをチェックする方法
- 17. Pythonで空の列をチェックする方法
- 18. C++文字列配列内の要素のサイズをチェックする方法は?
- 19. 異なる画面サイズでfloatを変更する方法はありますか?
- 20. floatフィールドをチェックし、OdooのV8
- 21. pythonでイメージのサイズを変更する方法3.2
- 22. pythonでサブプロセスstdoutとstderrのサイズを制限する方法
- 23. Pythonで図形のサイズを変更する方法Seabornパッケージ
- 24. PYTHON文字列をintまたはfloatに変換する方法
- 25. Ubuntuプログラムのコアダンプをbashまたはpythonでチェックする方法は?
- 26. PHPでAjaxでサイズをチェックする
- 27. Pandas Dataframeの真・偽のチェック方法 - Python
- 28. Linuxでイーサネットをチェックする方法は?
- 29. scala.math.BigDecimalでnullをチェックする方法は?
- 30. laravelでメールをチェックする方法は?
sys.float_infoは、多くの興味深いプロパティが含まれていますが、フロートのサイズがpanda-34は、それが正確にあなたが何を意味依存し、それらの1 @ –
ではありません"サイズ"。いずれにせよ、それはあなたが得ることができる最高の情報です。 (あなたは 'sys.float_info'の情報からビット単位で簡単にサイズを回復することができますが、それがどのように役に立つのだろうと思っています) –
OPはビット単位でサイズを32、64と明示しています。指数範囲と仮数の長さに基づいていくつかの野生の推測をしたいのでなければ、float_infoからのビット数を返します。 –