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/