logo

Python の除算演算子

ディビジョンオペレーター 2 つの数値を除算して商を返すことができます。つまり、最初の数値または左側の数値を 2 番目の数値または右側の数値で割って、商を返します。

Python の除算演算子

除算演算子には次の 2 種類があります。



  • フロート分割
  • 整数除算(フロア除算)

整数を除算する場合、結果は最も近い整数に丸められ、記号 // で示されます。浮動小数点数 / は浮動小数点数の除算を表し、商を浮動小数点数として返します。

ディビジョンオペレーターのメリット

除算演算子 (/) は、数値の除算演算を実行するプログラミング言語の基本的な算術演算子です。除算演算子を使用する利点は次のとおりです。

スキャナJava
  1. 基本的な算術演算: 除算演算子は、数学、工学、その他の分野で使用される基本的な算術演算の 1 つです。これを使用すると、ある数値を別の数値で除算して、一連の数値の平均の計算や値のスケーリングなどの計算を実行できます。
  2. 表現力豊かな構文 : 除算演算子は、コードで除算演算を実行するための簡潔で表現力豊かな構文を提供します。複数の算術演算を含む複雑な式を作成する代わりに、除算演算子を使用して 1 行のコードで除算を実行できます。
  3. 精密制御: 除算演算子を使用すると、さまざまなデータ型または丸め戦略を使用して計算の精度を制御できます。たとえば、浮動小数点除算 (/) を使用して 10 進商を計算したり、整数除算 (//) を使用して切り捨て商を計算したりできます。
  4. アルゴリズムの効率: 除算演算子を使用すると、行列乗算、線形代数、数値積分などの数値計算の効率的なアルゴリズムを実装できます。これらのアルゴリズムで除算演算子を使用すると、算術演算の数が減り、コードのパフォーマンスが向上します。
  5. 数学的モデリング: 除算演算子は、数学的モデリングやシミュレーションで、変化率、成長率、確率などの変数間の関係を表すために使用されます。これらのモデルで除算演算子を使用すると、複雑なシステムや現象をシミュレーションおよび分析できます。

全体として、除算演算子は、プログラミングと数学において幅広い利点をもたらす強力で多用途な演算子です。



Python の除算の種類

フロート分割

この演算子によって返される商は、2 つの数値が整数であるかどうかに関係なく、常に浮動小数点数です。例えば:

Python3






print>(>5>/>5>)> print>(>10>/>2>)> print>(>->10>/>2>)> print>(>20.0>/>2>)>

>

>

出力:

1.0 5.0 -5.0 10.0>

整数除算(フロア除算)

この演算子によって返される商は、渡される引数によって異なります。いずれかの数値が浮動小数点数の場合は、出力を浮動小数点数で返します。としても知られています 除算では、数値が負の場合、出力が切り捨てられるためです。例えば:

Python3




print>(>5>/>/>5>)> print>(>3>/>/>2>)> print>(>10>/>/>3>)>

>

>

出力:

1 1 3>

以下のステートメントを考慮してください。 パイソン

Python3




結合を使用してSQLで更新する
# A Python program to demonstrate the use of> # '//' for integers> print> (>5>/>/>2>)> print> (>->5>/>/>2>)>

>

>

出力:

2 -3>

最初の出力は問題ありませんが、Java/C++ の世界に来た場合、2 番目の出力は驚くかもしれません。 Python では、// 演算子は整数および浮動小数点数の引数の下位除算として機能します。ただし、除算演算子「/」は常に浮動小数点数を返します。

注記: // 演算子は、指定された式または値以下の最も近い整数値を返すために使用されます。したがって、上記のコードから、5//2 は 2 を返します。5/2 は 2.5 であり、以下の最も近い整数は 2[5//2] であることがわかります。(これは通常の計算の逆です。通常の数学では、値は 3) です。

Python3




# A Python program to demonstrate use of> # '/' for floating point numbers> print> (>5.0>/>2>)> print> (>->5.0>/>2>)>

シャーワナンド

>

>

出力:

2.5 -2.5>

実際のフロア分割演算子は // です。それ 戻り値 整数引数と浮動小数点引数の両方の下限値。

Python3




# A Python program to demonstrate use of> # '//' for both integers and floating points> print> (>5>/>/>2>)> print> (>->5>/>/>2>)> print> (>5.0>/>/>2>)> print> (>->5.0>/>/>2>)>

>

>

出力:

2 -3 2.0 -3.0>

ブール値の除算演算子は可能ですか?

パイソン 、除算演算子 (/) はブール値に対して定義されていません。 2 つのブール値を除算しようとすると、TypeError が発生します。ただし、ブール値を持つカスタム クラスの除算演算子をオーバーロードする場合は、__truediv__ 特殊メソッドを定義できます。以下に例を示します。

この例では、ブール値である単一の属性値を持つ MyClass を定義します。次に、__truediv__ メソッドを定義して / 演算子をオーバーロードし、2 つの MyClass インスタンスの value 属性に対して論理演算を実行します。

a / b を呼び出すと、最初の引数として an を、2 番目の引数として b を指定して __truediv__ メソッドが呼び出されます。このメソッドは、a.value と b.value の論理積である value 属性を持つ MyClass の新しいインスタンスを返します。

数学や Python ではブール値に対して除算が定義されていないため、ブール値に対して除算演算子をオーバーロードすることは意味がなく、役に立たないことに注意してください。上記の例は、カスタム クラスで演算子をオーバーロードする方法を示す単なるデモンストレーションです。

Python3




class> MyClass:> >def> __init__(>self>, value):> >self>.value>=> value> >def> __truediv__(>self>, other):> >return> MyClass(>self>.value>and> other.value)> a>=> MyClass(>True>)> b>=> MyClass(>False>)> c>=> a>/> b># c.value is False> print>(c.value)>

>

int を文字列に変換する

>

出力:

False>