【Python独学】比較演算子と論理演算子
今回は、Pythonで用いる比較演算子と論理演算子について扱っていきます。
比較演算子
プログラミングでは、数値などの比較をよく行います。
ある値とある値が等しいか、どちらかが大きいか小さいかといった比較は、比較演算子で行います。
例を見てみましょう。
x = 3 y = 4 print(x == y) print(x < y) print(x > y)
False
True
False
比較した結果は、”True”と”False”で表されます。
Pythonでは、TrueとFalse、つまり真偽値はbool型というデータ型で表されます。
例えば、xとyの値が等しいかどうかを比較する比較演算子は
x == y
と記述し、その結果値が等しければTrue、等しくなければFlaseになります。
比較演算子は、後の記事で取り上げるif文による条件分岐などを扱う際に
必要になってきます。
比較演算子の一覧は以下になります。
演算子 | 説明 | 例 |
---|---|---|
== | xとyが等しいときTrue | x == y |
!= | xとyが等しくないときTrue | x != y |
> | xがyより大きいときTrue | x > y |
< | xがyより小さいときTrue | x < y |
>= | xがy以上のときTrue | x >= y |
<= | xがy以下のときTrue | x <= y |
等しいかどうかを比較する際は、”==”という演算子を使う点に注意してください。
“=”、つまり記号が1つの場合は代入演算子になります。
いくつか例を確認しておきましょう。
x = 60 y = 50 print(x != y) print(x >= y) print(x <= y)
True
True
False
論理演算子
if文などで複数の条件を記述する際などに使う演算子として、論理演算子が定義されています。
論理演算子には、”and”,”or”,”not” の3種類が用意されています。
演算子 | 説明 | 例 |
---|---|---|
and | XとYの両方がTrueのときTrue 片方もしくは両方がFalseならFalse 論理積 | x and y |
or | xまたはyのどちらか一方、もしくは両方がTrueならTrue 両方FalseならFalse 論理和 | x or y |
not | xがTrueならFalse xがFalseならTrue 否定 | not x |
例を確認してみましょう。
x = True y = False print(x and y) #両方TrueのときTrue print(x or y) #片方でもTrueならTrue print(not x) #TrueならFalse FalseならTrue
False
True
False
これらの論理演算子を用いることで、例えば
「xの値が10以上かつyの値が100未満のときTrue」といったような
複数の条件を組み合わせて扱うことが出来るようになります。
x = 20 y = 80 print(x >= 10 and y < 100)
True
まとめ
値や変数などを比較する際は比較演算子を使います。
また、複数の条件を組み合わせる場合は論理演算子を使います。
これらは、if文など、Pythonを記述する上で非常に重要な要素になっています。
確認問題
1.以下の条件を比較演算子を使って記述してみましょう。
x = 10
・「xが10以上の場合True」
・「xが20ではない場合True」
・「xが30未満の場合True」
2.以下の条件を論理演算子を使って記述してみましょう。
x = 10
y = 20
・「xとyがどちらも20以上の場合True」
・「xかyのどちらか一方、あるいは両方が50未満の場合True」
・「”x == 10″がTrueの場合False」