Python に '//' がある理由は何ですか? [重複] 質問する

Python に '//' がある理由は何ですか? [重複] 質問する

誰かのコードでこれを見ました:

y = img_index // num_images

ここで、img_indexは実行インデックスであり、num_imagesは 3 です。

//私がいじくり回すとPython の、これは除算記号 (つまり、1 つのスラッシュ) と同じように機能するようです。二重のスラッシュを使用する理由があるのだろうかと思いました。

ベストアンサー1

Python 3 では、/演算子は浮動小数点除算を行うようになり、//整数除算 (つまり、剰余のない商) を行う演算子が追加されました。一方、Python 2 では、/オペランドの 1 つがすでに浮動小数点数でない限り、演算子は単純に整数除算でした。

Python 2.Xの場合:

>>> 10/3
3
>>> # To get a floating point number from integer division:
>>> 10.0/3
3.3333333333333335
>>> float(10)/3
3.3333333333333335

Python 3の場合:

>>> 10/3
3.3333333333333335
>>> 10//3
3

詳細については、ペップ238

おすすめ記事