2

2つのリストの値を比較したいと思います。

例えば:

a = [1, 2, 3]
b = [1, 2, 3]

aと同じかどうかを確認する必要がありbます。それ、どうやったら出来るの?

4

3 に答える 3

7
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
于 2012-07-14T06:33:06.600 に答える
5

単に使用する

a == b

演算子==は、同じオブジェクトを参照しているかどうかに関係なく、aとbの値を比較します。

于 2012-07-14T07:34:48.730 に答える
-2

@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

それがあなたの食欲を満足させることを願っています;]

于 2012-07-14T07:28:13.173 に答える