文法のきほん

INPUT · スライド

同じかどうかを調べる

01 / 06

== で「同じか」を尋ねる

2つの値が同じかどうかを調べるには、= を2つ重ねた == を使うよ。

答えは比較と同じで TrueFalse

print(10 == 10)print(10 == 5)

実行結果

True
False

02 / 06

なぜ = ではないのか

= はもう「入れる」という意味で使ってしまっているからだよ。

  • x = 5x に5を入れる
  • x == 5x は5と同じか

まったく別の意味なので、記号を分ける必要があったんだ。入れるのが1本、尋ねるのが2本と覚えよう。

x = 5print(x == 5)

実行結果

True

03 / 06

取りちがえるとどうなるか

if x = 5: と書くとどうなるか。Pythonは SyntaxError を出して止めてくれるよ。

実はこれは親切な仕様。他の言語だと、うっかり = を書いても動いてしまって、原因の分からないバグになることがある。Pythonは最初に止めてくれるんだ。

x = 3if x = 5:    print("ごうかく")

実行結果

SyntaxError: invalid syntax. Maybe you meant '==' or ':=' instead of '='?

04 / 06

!= で「ちがうか」を尋ねる

逆に「同じでない」を調べるのが !=! は「〜でない」という意味だよ。

==!= は必ず反対の答えになる。使いやすいほうを選べばいいよ。

print(10 != 5)print(10 != 10)

実行結果

True
False

05 / 06

文字にも使える

== は数だけでなく文字にも使える。中身が1文字ずつぴったり同じかを見るよ。

大文字と小文字は別物として扱われるので、"Yes""yes" は同じにならない。

aisatsu = "おはよう"print(aisatsu == "おはよう")print("Yes" == "yes")

実行結果

True
False

06 / 06

型がちがえば同じにならない

見た目が同じでも型がちがえば別物10"10" は同じにならないよ。

外から受け取った値はたいてい文字なので、数と比べる前に int() で変えるのを忘れないようにしよう。

print(10 == "10")print(10 == int("10"))

実行結果

False
True