Python - 基本的な算術演算

足し算、足し算などの算術演算子一覧と、その解説です。

基本的な算術演算

Pythonの算術演算子一覧
演算 演算名 演算子 説明 結果
足し算 加算(Addition) x + y X と y を足す 5 + 2 7
引き算 減算(Subtraction) x - y X から y を引く 5 - 2 3
掛け算 乗算(Multiplication) x * y X と y を掛ける 5 * 2 10
割り算 除算(Division) x / y X を y で割る 5 / 2 2.5
整数の割り算 整数除算(Integer Division) x // y X を y で割った商の整数 5 // 2 2
余り 剰余(Modulus) x % y X を y で割った余り 5 % 2 1
べき乗 累乗(Exponentiation) x ** y X の y 乗を求める 5 ** 2 25

計算の優先順位

演算子には優先順位があり、優先順位が高いものから計算されます。優先順位が同じ場合は 左 から計算されます。
算術演算子の優先順位
優先順位 演算 演算名 演算子
1 べき乗 累乗 **
2 掛け算 乗算 *
2 割り算 除算 /
2 整数の割り算 整数除算 //
2 余り 剰余 %
3 足し算 加算 +
3 引き算 減算

例:足し算と掛け算の混在

掛け算の方が優先度が高いので、掛け算 -> 足し算の 順で計算されます。優先度を変えたい場合は カッコ で括ります。
x = 5
y = 2

result = x + y * 10
print(result)     # 結果 = 25

result = 10 * x + y
print(result)     # 結果 = 52

result = (x + y) * 10
print(result)     # 結果 = 70

例:掛け算と割り算の混在

どちらも優先度が同じなので、左 から計算されます。
x = 10
y = 5

result = x / y * 10
print(result)     # 結果 = 20.0

result = x / (y * 10)
print(result)     # 結果 = 0.2

整数 int と 浮動小数点数 float の演算

整数(int) と 浮動小数点数(float) が混在すると、結果が 整数 でも 浮動小数点数 を返します。
print(1 + 1)     # 結果 = 2  (int型)
print(1 + 1.0)   # 結果 = 2.0(float型)

ただし、除算 の場合は 整数(int) 同士 で 結果が 整数 でも 浮動小数点数 を返します。

print(1 / 1)     # 結果 = 1.0(float型)
print(1 / 1.0)   # 結果 = 1.0(float型)

0(Zero)を含む演算

ゼロ除算(division by zero)

除算、整数除算、剰余をするとき、分母がゼロになると ZeroDivisionError が発生します。
# 除算
result = 10 / 0
# -> ZeroDivisionError: division by zero

# 整数除算
result = 10 // 0
# -> ZeroDivisionError: integer division or modulo by zero

# 剰余
result = 10 % 0
# -> ZeroDivisionError: integer modulo by zero

0 の 0 乗

0 の 0 乗 は 1 を返します。底 または 指数 に少数(float型)が含まれる場合、1.0(float型)を返します。
print(0 ** 0)      # 結果 = 1

print(0.0 ** 0)    # 結果 = 1.0
print(0 ** 0.0)    # 結果 = 1.0

参考資料

検証環境