ホームページ >バックエンド開発 >Python チュートリアル >Python の整数の除算に戸惑うのはどんなときですか?
Python の整数の除算: 難問
Python の除算演算に負の整数が含まれる場合、予期しない結果が生じる可能性があります。次の式:
<code class="python">8 / -7</code>
は、-2 という驚くべき結果を返します。単純な算術演算で負の実数が得られると予想されるため、この結果は直感に反するように見えるかもしれません。
動作を理解する
この動作の説明は次のとおりです。 Pythonにおける「フロア分割」の概念。除算の結果が常に実数になる数学とは異なり、Python の整数除算では、結果が最も近い整数に切り捨てられます。この「フロアリング」効果は、驚くべき負の整数結果の原因です。
この場合、演算 8 / -7 は実際には 8.0 / (-7.0) を計算し、これは約 -1.143 です。ただし、整数の除算のため、結果は -2 に切り捨てられます。
影響と解決策
この動作は、特に正の値と正の値を混合した場合に、複雑な結果を招く可能性があります。除算演算における負の整数。例:
<code class="python">8 / 7 # Returns 1 8 / -7 # Returns -2</code>
Python 3 では、// で示される整数除算用の個別の演算子を導入することで、この問題が解決されました。この演算子を使用すると、Python 2 の動作と同様に、結果が常に整数になります。
<code class="python">8 // -7 # Returns -2</code>
結論
Python での負の整数除算の驚くべき結果これは、結果を最も近い整数に切り捨てるフロア除算の概念に由来しています。これらの予期しない結果を回避するには、次の点を考慮してください:
以上がPython の整数の除算に戸惑うのはどんなときですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。