まずはこちらをクリック!

Pythonで比較演算子と論理演算子を使ってみよう

サバくん
サバくん

「もしこうだった場合は、、」といった条件分けがしたい場合はif文の出番!!

そのif文を学ぶ前にまずは比較演算子や論理演算子を知っておく理解が深まります。

比較演算子

サバくん
サバくん

比較演算子とは演算子を挟んだ2つの値がどのような関係性かを調べるものです

例えば2つの値が等しいかを調べる場合は==を使用します。

6 == 3+3

#True
6 == 6.0000000000000005

# False

このように2つの値の関係があっていればTrue間違っていればFalseを返します。

0.0000000000000005でも違えば、、

0.0000000000000005でも違えばFalseとなる。ちなみにこれ以上の誤差はTrueで返されます。

バージョンの違いにもよるかもしれませんが、

比較演算子には他にもあります。以下の表にまとめました。

コード数式意味
===等しい
!=等しくない
<<左より右が大きい
>>左より右が小さい
<=右は左以上
>=右は左以下

for文と比較演算子を使うとシーケンス型(list型やtuplef型などの順番と長さを持つ型)内で何個条件を満たしているのかを確認することもできます。

l = [0,1,2,3,4,5,6,7,8,9]
tf = [i>=3 for i in l] # 3以上の要素はTrueで返す
print(tf)
print(sum(tf)) 

# [False, False, False, True, True, True, True, True, True, True]
# 7
# このコードでリストの中に3以上の数値が7つ存在していることがわかる

論理演算子

サバくん
サバくん

〇〇かつ××、〇〇または××、〇〇ではない時といった表現をしたい時は and, or, notの出番です

andは条件式が全てTrueの時にTrueを返します。

True and True

# True
True and False

# False

orは条件式のうち1つでもTrueの時にTrueを返します。

True or True

#True
True or False

#True

notはTrueをFalse、FalseをTrueで返します。

not True

# False
not False

# True
要素数が3つ以上の時は?

要素数が3つ以上の時はtuple型と組み込み関数のallとanyを使うと良いです。

all()

listやtupleなどの要素が全て真ならばTrueを返します。もし要素が空であってもTrueを返します。

all((True, True, True, True, True))

# True
all([True, False, True, True, False])

# False

any()

listやtupleなどの要素のいずれかがならばTrueを返します。もし要素が空であればFalseを返します。

any([True, True, True, True, True])

# True
any([True, False, True, True, False])

# True

脱Python初心者ロードマップ

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA