この章では、Pythonで使われるさまざまな演算子と式について学びます。演算子は、数値や変数に対して計算や比較などの操作を行うために使用され、式は演算子を使って計算や評価を行う一連の構文です。これらの基本を理解することで、より複雑なプログラムを作成できるようになります。
3.1 算術演算子、比較演算子、論理演算子
Pythonには、さまざまな種類の演算子があり、特定の目的に応じて異なる動作をします。ここでは、基本的な算術演算子、比較演算子、論理演算子について説明します。
算術演算子
算術演算子は、数値に対して数学的な操作を行うための演算子です。
演算子 | 意味 | 例 |
---|---|---|
+ | 加算 | 2 + 3 → 5 |
- | 減算 | 5 - 2 → 3 |
* | 乗算 | 3 * 4 → 12 |
/ | 除算 | 10 / 2 → 5.0 |
// | 整数除算 | 10 // 3 → 3 |
% | 余り(モジュロ) | 10 % 3 → 1 |
** | 累乗 | 2 ** 3 → 8 |
例として、次のコードを見てみましょう。
a = 10
b = 3
print(a + b) # 加算 → 13
print(a - b) # 減算 → 7
print(a * b) # 乗算 → 30
print(a / b) # 除算 → 3.333...
print(a // b) # 整数除算 → 3
print(a % b) # 余り → 1
print(a ** b) # 累乗 → 1000
比較演算子
比較演算子は、2つの値を比較し、その結果をブール値(True
またはFalse
)で返します。
演算子 | 意味 | 例 |
---|---|---|
== | 等しい | 5 == 5 → True |
!= | 等しくない | 5 != 3 → True |
> | より大きい | 5 > 3 → True |
< | より小さい | 5 < 3 → False |
>= | 以上 | 5 >= 3 → True |
<= | 以下 | 5 <= 3 → False |
次の例を見てください。
x = 10
y = 5
print(x == y) # 等しいか → False
print(x != y) # 等しくないか → True
print(x > y) # xはyより大きいか → True
print(x < y) # xはyより小さいか → False
論理演算子
論理演算子は、複数の条件を組み合わせたり、ブール値を操作するために使用します。
演算子 | 意味 | 例 |
---|---|---|
and | すべての条件がTrueの場合 | True and False → False |
or | どれか一つの条件がTrueの場合 | True or False → True |
not | 真偽値を反転させる | not True → False |
a = True
b = False
print(a and b) # 両方がTrueか → False
print(a or b) # どちらかがTrueか → True
print(not a) # aを反転 → False
3.2 三項演算子の使用法
Pythonでは、三項演算子(条件式)を使って、1行で条件に基づいた値を返すことができます。これは、if
文を簡潔に書くために役立ちます。
三項演算子の構文
value_if_true if condition else value_if_false
age = 18
status = "成人" if age >= 18 else "未成年"
print(status) # "成人"と表示される
このコードでは、age
が18以上の場合に"成人"
を、そうでない場合に"未成年"
を変数status
に代入しています。
3.3 演算子の優先順位と結合性
複数の演算子が混在する式では、演算子の優先順位が結果に影響を与えます。Pythonの演算子にも優先順位があり、これによってどの演算子が先に評価されるかが決まります。
演算子の優先順位
以下は、主要な演算子の優先順位の一覧です(上から下へ行くほど優先順位が低くなります)。
()
– 丸括弧**
– 累乗*
,/
,//
,%
– 乗算、除算、整数除算、余り+
,-
– 加算、減算==
,!=
,>
,<
,>=
,<=
– 比較演算子not
– 論理NOTand
– 論理ANDor
– 論理OR
例:優先順位に基づく計算
result = 3 + 2 * 5 # 2 * 5が先に計算される → 3 + 10 = 13
print(result)
この例では、2 * 5
が先に計算され、その結果に3
が加算されます。
3.4 式の評価と短絡評価
式の評価とは、式を実行して結果を得ることです。例えば、3 + 5
は8
に評価されます。演算子を使った複雑な式では、演算子の優先順位に従って順番に評価されます。
**短絡評価(short-circuit evaluation)**とは、論理演算子(and
やor
)が使われる際に、左側の条件で結果が確定した場合に右側の条件を評価しないことを指します。
例:短絡評価
def check():
print("チェック実行")
return True
result = False and check() # Falseが確定しているのでcheck()は実行されない
print(result) # False
この例では、False
の時点でand
の結果が決定するため、check()
関数は実行されません。これが短絡評価です。
まとめ
この章では、Pythonにおけるさまざまな演算子や式の使い方、優先順位、そして短絡評価について学びました。これらの基礎を理解することで、より複雑なプログラムを作成する際に役立ちます。次の章では、Pythonの制御フローについて詳しく学んでいきます。