1. ホーム
  2. パイソン

[解決済み】次の項目のいずれかがリスト内にあるかどうかを確認する方法?

2022-04-02 19:44:25

質問

次の項目のいずれかがリストに含まれているかどうかを確認する簡単な方法を探しているのですが、最初の試みはうまくいきません。これを達成するために関数を書く以外に、複数の項目の1つがリストにあるかどうかをチェックする簡単な方法はありますか?

>>> a = [2,3,4]
>>> print (1 or 2) in a
False
>>> print (2 or 1) in a
True

解決方法は?

>>> L1 = [2,3,4]
>>> L2 = [1,2]
>>> [i for i in L1 if i in L2]
[2]


>>> S1 = set(L1)
>>> S2 = set(L2)
>>> S1.intersection(S2)
set([2])

空リストも空集合もFalseなので、値をそのまま真理値として使うことができます。