pythonistaを使用して12.76を除算したところ、結果は0.12ではなく0.12000000001でした。なぜですか?なぜPython 12.76/106が0.1200000000001で、0.12でないのですか?
1
A
答えて
1
コンピュータは計算をバイナリで行うためです。しかし、彼らはまた数字を表すビット数が限られています。おそらくベース2にオーバーフローがあったので、マシンは1ビットまたは何かを切り上げなければならなかった。その後、小数点に変換すると、それを得る.00000000000001
2
http://floating-point-gui.deを見てみたいです。あなたが得ている答えは間違いではなく、すべての精度はあなたが望む程度に依存します。
+0
たぶん、Decimal('12 .72 ')/ 106 * 100を返して、Decimal('12 .00')を返すことがありました。小数点モジュールをインポートする必要があります(小数点のインポート*から) –
関連する問題
- 1. なぜINSERT INTOがPythonで動作しないのですか
- 2. なぜ "python"コマンドがvirtualenvで動作しないのですか?
- 3. なぜpythonでpool.mapが動作しないのですか?
- 4. Pythonマルチプロセッシングパイプが安全でないのはなぜですか?
- 5. なぜPythonでChainmapモジュールをインポートできないのですか?
- 6. なぜpythonでディレクトリを変更できないのですか?
- 7. Pythonでクラスをインポートできないのはなぜですか?
- 8. なぜこのPythonコードが機能しないのですか?
- 9. なぜ以下のpythonが動作しないのですか?
- 10. なぜ私のpythonループが動作しないのですか
- 11. なぜPythonは({])が{}と等しくないのですか?
- 12. なぜ `pyvenv`が` python-config`をインストールしないのですか?
- 13. Pythonにswitch-caseがないのはなぜですか?
- 14. なぜpythonインスタンスに__name__属性がないのですか?
- 15. なぜPythonにネイティブリンクリスト実装がないのですか?
- 16. Python - なぜ+ =演算子が動作しないのですか
- 17. なぜこれが動作しないのですか(Python)
- 18. なぜPythonにガベージコレクタスレッドがないのですか?
- 19. Opencv-Pythonでイメージが異なるのはなぜですか?
- 20. Pythonで「finally」節が必要なのはなぜですか?
- 21. Pythonでコルーチンが必要なのはなぜですか?
- 22. なぜPythonが低レベルですか?
- 23. なぜPython 3でURLを開くことができないのですか?
- 24. なぜPythonでlen(file)を使用しないのですか?
- 25. python selenium - なぜこれをクリックできないのですか?
- 26. なぜPythonマルチプロセッシングで更新されないのですか?
- 27. なぜPython-Scrapyをインストールできないのですか?
- 28. なぜdf.head()はPythonで動作しないのですか
- 29. Python 3.xでpython-cjsonを使用できないのはなぜですか?
- 30. .find()がpython 3のurllib.request.urlopen()で動作しないのはなぜですか?
pythonで正しい結果を得る方法はありますか? –