2つのリストの値を比較したいと思います。
例えば:
a = [1, 2, 3]
b = [1, 2, 3]
a
と同じかどうかを確認する必要がありb
ます。それ、どうやったら出来るの?
a == b
これは非常に単純なテストであり、すべての値が等しいかどうかをチェックします。
a
両方が同じリストを参照しているかどうかを確認する場合b
は、を使用できますis
。
>>> a = [1, 2, 3]
>>> b = [1, 2, 3]
>>> a is b # a and b have the same values but refer to different lists in memory
False
>>> a = [1, 2, 3]
>>> b = a
>>> a is b # both refer to the same list
True
単に使用する
a == b
演算子==
は、同じオブジェクトを参照しているかどうかに関係なく、aとbの値を比較します。
@jamylakの答えは私が行くものです。しかし、「いくつかのオプション」を探しているなら、ここにたくさんあります:
>>> a = [1,2,3]
>>> b = [1,2,3]
>>> a == b
True
また
def check(a,b):
if len(a) != len(b):
return False
for i in xrange(len(a)):
if a[i] != b[i]:
return False
return True
また
>>> len(a)==len(b) and all((a[i]==b[i] for i in xrange(len(a))))
True
また
def check(a,b):
if len(a) != len(b):
return False
for i,j in itertools.izip(a,b):
if i != j:
return False
return True
また
>>> all((i==j for i,j in itertools.izip(a,b)))
True
または(リストが数字だけで構成されている場合)
>>> all((i is j for i,j in itertools.izip(a,b)))
True
また
>>> all((i is j for i,j in itertools.izip(a,b)))
True
それがあなたの食欲を満足させることを願っています;]