ホームページ >バックエンド開発 >Python チュートリアル >Python 3 の `/` 演算子が整数ではなく浮動小数点を生成するのはなぜですか?

Python 3 の `/` 演算子が整数ではなく浮動小数点を生成するのはなぜですか?

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2025-01-03 17:54:09985ブラウズ

Why Does Python 3's `/` Operator Produce a Float Instead of an Integer?

現代の Python で浮動小数点数を生成する整数除算

Python 2 では、整数除算 (つまり /) の結果は整数値でした。ただし、この動作は Python 3 で変更されました。

>>> 2 / 2
1.0

なぜこの除算は整数ではなく浮動小数点を生成するのでしょうか?

Python における除算の進化

除算動作の変化は PEP-238 に文書化されています:

The // operator will be available to request floor division unambiguously.

これは次のことを意味します。整数除算 (/) は、// 演算子が階数除算に明示的に使用されない限り、デフォルトで浮動小数点数を返すようになりました。

問題の解決

除算から整数の結果を取得するには、2 つのオプションがあります。 :

  1. Use Floor Division (//): // 演算子は整数の除算を実行しますそして整数値を返します。例:
>>> 2 // 2
1
  1. 結果を整数にキャスト: int() 関数を使用して / 除算の結果を整数にキャストできます:
>>> int(2 / 2)
1

結論

Python の場合3、整数除算 (/) はデフォルトで浮動小数点を返します。整数の結果を取得するには、フロア除算に // 演算子を使用するか、/ 除算の結果を整数にキャストします。

以上がPython 3 の `/` 演算子が整数ではなく浮動小数点を生成するのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。