タイトル: 演算子
Pythonの演算子の記事です。値の計算・比較・代入・論理判定など、Pythonで使える演算子を種類別に整理しています。
子ページから演算子の種類を選択してください。
本ページの子ページ一覧
| 項目 | 例 |
|---|---|
| 算術演算子 | +, -, *, /, //, %, ** |
| 文字列演算子 | +(連結), *(繰り返し) |
| 代入演算子 | =, +=, -=, *=, /= |
| 比較演算子 | ==, !=, <, >=, in, is |
| 論理演算子 | and, or, not |
| ビット演算子 | &, |, ^, ~, <<, >> |
使用例
|
# 算術 |
Python特有の演算子
| 演算子 | 意味 |
|---|---|
// | 切り捨て除算(整数部のみ) |
** | 累乗 |
in / not in | メンバ判定。リスト・文字列・dict等 |
is / is not | 同一オブジェクト判定(参照比較) |
:= (walrus) | 式の中で代入(Python 3.8+) |
@ | 行列積(NumPy/Python 3.5+) |
and / or / not | 論理演算(C系の && ではない) |
== と is の違い
|
a = [1, 2, 3] |
演算子の優先順位(抜粋)
| 優先度 | 演算子 |
|---|---|
| 高 | ** |
| ↑ | +x -x ~x(単項) |
| ↑ | * / // % |
| ↑ | + - |
| ↑ | 比較演算子 |
| ↑ | not |
| ↑ | and |
| 低 | or |
意図を明確にするためにも、複雑な式はカッコで囲むのが推奨です。
注意点
- 論理演算は
&&ではなくand、||ではなくor、!ではなくnot 1/2は 0.5(Python 3 では常に float除算)。整数除算は1//2- 連鎖比較が可能:
0 < x < 10は0 < x and x < 10の意味 and/orは短絡評価。型は最後に評価された値(必ずしも bool ではない)
関連
- 親カテゴリ: 文法 (Python)