Python
 Computer >> コンピューター >  >> プログラミング >> Python

Pythonの「not in」演算子とは?メンバーシップ演算子の使い方を解説

「not in」演算子の基本

Pythonには、innot inという2つのメンバーシップ演算子(membership operators)が用意されています。これらは、あるオブジェクトが文字列(str)、リスト(list)、タプル(tuple)などのシーケンス型オブジェクトに含まれているかどうかを判定するために使われます。

このうちnot in演算子は、指定したオブジェクトがシーケンス内に存在しない場合にTrueを返し、存在する場合にFalseを返します。つまり、in演算子の結果を反転させた動作になります。

文字列に対する使用例

まず、文字列に対してnot inを使った例を見てみましょう。

>>> 'p' not in 'Tutorialspoint'
False
>>> 'c' not in 'Tutorialspoint'
True

1つ目の例では、文字列'Tutorialspoint'の中に'p'が含まれているため、not inFalseを返します。一方、2つ目の例では'c'は含まれていないため、Trueが返されます。

rangeオブジェクトに対する使用例

rangeで生成した数値のシーケンスに対しても同様に使えます。

>>> 10 not in range(0,5)
True

range(0,5)は0から4までの整数を表すため、10は含まれません。その結果、Trueが返されます。

リストやタプルでの活用

not inはリストやタプルなど、他のシーケンス型にも利用できます。

>>> fruits = ['apple', 'banana', 'orange']
>>> 'grape' not in fruits
True
>>> 'apple' not in fruits
False

このように、特定の要素がコレクションに存在しないことを確認したい場面で、条件分岐と組み合わせてよく使われます。

>>> if 'grape' not in fruits:
...     print('grapeはリストに存在しません')
...
grapeはリストに存在しません

まとめ

not in演算子は、要素がシーケンスに含まれていないかどうかを簡潔に判定できる便利な演算子です。文字列・リスト・タプル・rangeなど幅広いデータ型に対応しており、条件分岐と組み合わせることで可読性の高いコードを書くことができます。

  1. Pythonの演算子の種類をわかりやすく解説!7つの基本カテゴリ一覧

    Pythonの演算子とは?演算子(Operator)とは、オペランド(被演算子)の値を操作・処理するための記号やキーワードのことです。例として「4 + 5 = 9」という式を見てみましょう。この場合、4と5が「オペランド(被演算子)」と呼ばれ、+が「演算子」と呼ばれます。Python言語では、目的に応じて複数の種類の演算子が用意されており、これらを使いこなすことが効率的なプログラミングの第一歩となります。Pythonでサポートされている7種類の演算子Pythonでは、主に以下の7種類の演算子がサポートされています。1. 算術演算子(Arithmetic Operators)足し算(+)、引き算

  2. Pythonのオブジェクト比較を徹底解説:「is」と「==」演算子の違い

    本記事では、Pythonにおけるオブジェクト比較の方法として、「is」演算子と等価演算子「==」の違いについて詳しく解説します。 この2つの演算子は似ているようで、実はまったく異なる役割を持っています。それぞれの動作の仕組みを正しく理解することは、バグの少ないPythonコードを書く上で非常に重要です。 「==」と「is」の基本的な違い 等価演算子(==)は、渡されたオブジェクトの値が等しいかどうかを判定します。つまり、2つのオブジェクトがメモリ上のどこに格納されていようと、中身の内容が同じであれば「等しい」とみなされます。 一方、is 演算子は、2つのオブジェクトが同一の参照(同じメモリ上の