式、演算子とは?
式は値と演算子などがの組み合わせでできています。
式が評価されると値を持ちます。
演算子は数値、文字列などのデータに対して一定の処理を行うことができます。
例えば、下記があげられます。
- 式「1 + 1」の+
- 式「2 < 3」の<
- 式「not True」のnot
よく使う演算子の紹介
Pythonでよく使う演算子を順に紹介します。
算術演算
算術演算はその名の通り、算数の計算で使われる演算です。
演算子 | 処理の説明 |
+ | 足し算 |
– | 引き算 |
* | 掛け算 |
/ | 割り算(小数点まで計算する) |
// | 割り算(小数点以下切り捨て) |
% | 剰余(割り算のあまり) |
1 + 2 # 3
3 - 4 # -1
3 * 4 # 12
11 / 4 # 2.75
11 // 4 # 2
11 % 4 # 3
比較演算
比較演算子はデータ同士を比較する演算です。
評価されるとTrueかFalseの値となります
演算子 | 処理の説明 |
< | 小なり(右辺より左辺が小さいか?) |
> | 大なり(右辺より左辺が大きいか?) |
== | 等号(右辺と左辺が同じ値か?) |
>= | 大なりイコール(右辺より左辺が大きいもしくは等しいか?) |
<= | 小なりイコール(右辺より左辺が小さいもしくは等しいか?) |
!= | 不等号(右辺と左辺が異なる値か?) |
数値に比較演算を行った例は下記のとおりです
1 < 2 # True
3 > 4 # False
3 == 4 # False
11 >= 4 # True
11 <= 11 # True
11 != 4 # True
また、比較演算は文字列に対して行うこともできます。
文字列に比較演算を行った例は下記のとおりです
"ab" < "cd" # True
"Ab" > "cd" # False
"ef" == "ef" # True
"abc" >= "abc" # True
"abc" <= "abd" # True
"abc" != "abd" # True
ブール演算
ブール演算は複数の条件判断をつなげます
演算子 | 演算子の説明 |
or | まず左辺を評価します。 左辺が真なら左辺の値を返します。 それ以外の場合には、右辺を評価した結果値を返します。 |
and | まず左辺を評価します。 左辺が偽なら左辺の値を返します。 それ以外の場合には、右辺を評価した結果値を返します。 |
not | 引数が偽である場合には True をそれ以外の場合には False を返却する |
1 < 2 or 3 < 1 # True
1 < 2 and 3 < 1 # False
not 1 < 2 # False
式の評価
評価の順序
式の評価は左から右に行われます。
ただし、次に述べる優先順位が上位の演算子がある場合はそちらが先に計算されます
1 + 2 + 3 + 4 + 5
((((1 + 2) + 3) + 4) + 5) # 内側のカッコから計算される
優先順位
演算子には優先順位が存在します。
優先順位が上位の演算子は先に計算されます。
1 + 2 * 3
(1 + (2 * 3)) # 内側のカッコから計算される
本記事で紹介した演算子の優先順位は下記のとおりです。
優先順位 | 演算子 |
1 | ()で囲まれた式 |
2 | *、 /、 //、 % |
3 | +、 – |
4 | <、 <=、 >、 >=、 !=、 == |
5 | not |
6 | and |
7 | or |
8 | = |