コンテンツにスキップ

Pythonではないというキーワードを含めたタイトル: Pythonではないときにどのように修正するか?

[

Pythonのメンバーシップテストは、inおよびnot in演算子を使用して、特定の値が値のコレクションの一部であるかどうかを迅速に判断することができます。このようなチェックはプログラミングで一般的であり、Pythonでは通常「メンバーシップテスト」と呼ばれています。したがって、これらの演算子は「メンバーシップ演算子」として知られています。

このチュートリアルでは、以下の方法を学びます:

  • **inおよびnot in**演算子を使用してメンバーシップテストを実行する
  • inおよびnot inを異なるデータ型で使用する
  • in演算子の相当する関数であるoperator.contains()を使用する
  • 独自のクラスinおよびnot inをサポートする

Pythonのメンバーシップテストの基礎

時には、値が値のコレクションに存在するかどうかを確認する必要があります。つまり、特定の値が値のコレクションのメンバーかどうかを確認する必要があります。この種のチェックは一般にメンバーシップテストとして知られています。

次のis_member()関数を考えてみましょう:

>>> def is_member(value, iterable):
... for item in iterable:
... if value is item or value == item:
... return True
... return False
...

この関数は2つの引数、ターゲットのvalueと値のコレクション(一般的にiterableと呼ばれる)を受け取ります。ループはiterableをイテレーションし、条件文はターゲットのvalueが現在の値と等しいかどうかをチェックします。条件は、isを使用してオブジェクトの同一性をチェックするか、等値演算子(==)を使用して値の等価性をチェックします。これらはわずかに異なるものですが、メンバーシップテストの目的に応じて使い分けることができます。