Python – 演算子

代数演算子(+, -, *, /, %, **, //)

下記の演算子が定義されています。

Python
+a            # 正数
-a            # 負数
a + b         # 加算
a - b         # 減算
a * b         # 乗算
a / b         # 除算
a % b         # a を b で割った余り
a ** b        # a の b 乗
a // b        # 切り捨て除算

ビット演算子(~, &, |, ^, <<, >>)

下記のビット演算子が定義されています。

Python
~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 += 1 や a -= 1 を用います。

Python
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 に同じ

比較演算子(==, !=, <, >, <=, >=, is, is not, in, not in)

下記の比較演算子が定義されています。

Python
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, b は共に文字列、または、b はリストやタプル)
a not in b       # a が b に含まれない (a, b は共に文字列、または、b はリストやタプル)

ブール演算子(and, or, not)

下記のブール演算子が定義されています。

Python
a and b         # a も b も真であれば真
a or b          # a または b が真であれば真
not a           # a が偽であれば真

条件演算(if else)

下記の式は、c が真であれば x を、さもなくば y を返します。

Python
x if c else y

文字列演算(+, *, [n:m])

文字列に対して下記の演算子が定義されています。文字数は 0文字から数えます。n や m にマイナスの数を指定すると、文字列の後ろから数えます。

Python
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個とばしで取り出します

参考元:http://www.tohoho-web.com/python/operators.html