【Python3】各種演算子
演算子の優先順位
それぞれの演算子には優先順位というものがあって、
違った種類の演算子が混在する場合は、優先順位の高いものから先に演算されます。
必要に応じて強制的に優先順位を設定するために括弧を使用することができます。
Python: 演算子の優先順位 – Manual
https://docs.python.jp/3/reference/expressions.html#operator-precedence
算術(代数)演算子
+a # 正数
-a # 負数
a + b # 加算
a - b # 減算
a * b # 乗算
a / b # 除算
a % b # a を b で割った余り
a ** b # a の b 乗
a // b # 切り捨て除算
代入演算子
a = b # a に b を代入する
a += b # a = a + b に同じ
a -= b # a = a - b に同じ
a *= b # a = a * b に同じ
a /= b # a = a / b に同じ
a %= b # a = a % b に同じ
a **= b # a = a ** b に同じ
a //= b # a = a // b に同じ
a &= b # a = a & b に同じ
a |= b # a = a | b に同じ
a ^= b # a = a ^ b に同じ
a <<= b # a = a << b に同じ
a >>= b # a = a >> b に同じ
ビット演算子
~a # ビット反転
a & b # AND:論理積(aもbも1のビットが1)
a | b # OR:論理和(aまたはbが1のビットが1)
a ^ b # XOR:排他的論理和(aまたはbが1のビットが1)
a << b # b ビット左シフト
a >> b # b ビット右シフト
比較演算子
a == b # a が b と等しい
a != b # a が b と異なる
a < b # a が b よりも小さい
a > b # a が b よりも大きい
a <= b # a が b 以下である
a >= b # a が b 以上である
a <> b # a が b と異なる
a is b # a が b と等しい
a is not b # a が b と異なる
a in b # a が b に含まれる
a not in b # a が b に含まれない
ブール(論理)演算子
a and b # a も b も真であれば真
a or b # a または b が真であれば真
not a # a が偽であれば真
条件演算(if else)
c が真であれば x を、さもなくば y を返します。
x if c else y
文字列演算
文字数は 0文字から数えます。
n や m にマイナスの数を指定すると、文字列の後ろから数えます。
a + b # 文字列 a と 文字列 b を連結します
a * n # 文字列 a を n 回繰り返します
a[n] # 文字列 a の中の n 番目の文字を取り出します
a[n:m] # 文字列 a の中の n 番目から m 番目までの文字列を取り出します
a[n:] # 文字列 a の中の n 番目から最後までの文字列を取り出します
a[:m] # 文字列 a の中の 0 番目から m 番目までの文字列を取り出します
a[n:m:s] # 文字列 a の中の n 番目から m 番目までの文字列を s個とばしで取り出します