is not 非同一性判定

最終更新:2026-09-22

is not 非同一性判定

is not は is の否定である。

カテゴリ演算子
種類演算子
Python バージョンall

📝 構文

a is not b

▶ 例

下のコードを編集し「実行」をクリックすると、出力パネルに結果が表示されます:

実行結果:

True
False
さらに多くのケースは近日公開予定です。

❓ よくある質問

Qis not と != の違いは何ですか?
A`is not` は「同じオブジェクトでない」を判定し、`!=` は「値が等しくない」を判定します。`a = [1]; b = [1]` のとき、`a is not b` は `True` ですが `a != b` は `False` です。
QNone の検査は is not None と != None どちらを使うべきですか?
A`x is not None` を使います。一部の型は `__ne__` をオーバーロードしており、`x != None` の動作を信頼できないことがあります。`is not None` はオブジェクトの同一性を比較するので常に正確です。
Q小さい整数や文字列で is not は信頼できますか?
A信頼できません。CPython は小さい整数(-5 〜 256)や短い文字列をキャッシュ・インターンするため、`is not` の結果は実装の詳細に依存します。値が等しくないかを判定するなら `!=` を使いましょう。
Web-Tutorial.com

Web-Tutorial 技術チーム

複数の開発者によって共同維持されているプログラミングチュートリアルプラットフォーム。各チュートリアルは専門分野の開発者が執筆・レビューしています。正確で信頼性の高いコンテンツを目指しています — 問題を見つけた場合はお知らせください。

100%