w、x、y、および z のすべてがリスト A に含まれているとします。xのみが含まれていることを確認するためのショートカットはありますか? 他の変数を否定せずに?
w、x、y、および z はすべて単一の値です (リスト、タプルなどではありません)。
A=[w,y,x,z]
all(p == x for p in A)
それ、またはループを処理したくない場合:
>>> a = [w,x,y,z]
>>> a.count(x) == len(a) and a
(and a
空のリストと照合するために追加されます)
これは、他の変数を参照せずに、すべてelement
の sA
が等しいことを確認します。x
all(element==x for element in A)
リスト内のすべてのアイテムがハッシュ可能である場合:
set(A) == set([x])
{x} == {w,x,y,z} & set(A)
これは、 と のすべての[w,x,y,z]
アイテムA
がハッシュ可能である場合に機能します。
他の変数を否定しないことが何を意味するのかわかりませんが、これがあなたが望んでいることだと思います:
if all(item == x for item in myList):
#do stuff
別の方法を次に示します。
>>> [x] * 4 == [x,w,z,y]
すでに述べた多くのこと。
この質問には 2 つの解釈があります。
まず、[w,y,z] に含まれる x の値です。
>>> w,x,y,z=1,2,3,2
>>> any(x == v for v in [w,y,z])
True
>>> w,x,y,z=1,2,3,4
>>> any(x == v for v in [w,y,z])
False
または、それらが同じオブジェクトを表していることを意味する場合もあります。
>>> w,x,y,z=1,2,3,4
>>> any(x is v for v in [w,y,z])
False
>>> w,x,y,z=1,2,3,x
>>> any(x is v for v in [w,y,z])
True