Pythonの勉強を続けています🐍

今回は

👉 is== の違い

について学びました。

これ、見た目は似てますが👇

👉 全く別物です

ここ理解しないと
普通にバグります😅


■ まず結論

== → 値が同じか
is → 同じオブジェクトか


■ == の意味



a = 10
b = 10

print(a == b)

👉 出力:True

👉 値が同じかを比較


■ is の意味



a = 10
b = 10

print(a is b)

👉 出力:True(※場合による)

👉 同じ場所(オブジェクト)かを比較


■ 違いを確認



a = [1, 2, 3]
b = [1, 2, 3]

print(a == b)
print(a is b)

👉 出力
True
False


■ なぜこうなる?

== → 中身を比較
is → メモリ上の場所を比較

つまり👇

👉 同じ内容でも別物なら is はFalse


■ よくあるミス

isで値比較してしまう



a = 1000
b = 1000

print(a is b)

👉 結果が安定しないことあり

👉 バグの原因になります


■ 正しい使い分け

✔ 値を比較 → ==
✔ None判定 → is



x = None

if x is None:
print("Noneです")

👉 これは is を使うのが正解


■ 今日の学び

== は値比較
is はオブジェクト比較
✔ 使い分け超重要

ここ理解すると

👉 バグ回避力がかなり上がります🔥


🎯 まとめ

・is と == は別物
・値比較は ==
・同一オブジェクトは is


🔥 フォローして学習の流れを追う(重要)

Python初心者の学習記録を発信しています🐍
👉 フォローするとPython学習の流れが全部追えます

このブログではPython独学の学習記録を発信しています🐍

同じようにプログラミングを独学している方、未経験からエンジニアを目指している方はぜひフォローしてください。

🎥 TikTokでも学習発信しています
https://www.tiktok.com/@programbenkyo0078

📘 はてなブログ
https://xxxx00782.hatenablog.com/