festlegen
Code: Select all
list_1 = [numpy.array([1, 2]), numpy.array([3])]
list_2 = [numpy.array([3]), numpy.array([1, 2])]
< /code>
als Beispiel für etwas, das im Vergleich zu True zurückkehren sollte. Die Reihenfolge der Elemente sollte innerhalb des Numpy -Arrays von Bedeutung sein, also < /p>
list_3 = [numpy.array([2, 1]), numpy.array([3])]
Code: Select all
def contents_equal(list_1, list_2):
for array in list_1:
if array not in list_2:
return False
for array in list_2:
if array not in list_1:
return False
return True
< /code>
Leider hat dies auch nicht funktioniert. Ich habe den folgenden Fehler in der Zeile erhalten, wenn Array nicht in list_2
Code: Select all
ValueError: The truth value of an array with more than one element is ambiguous. Use a.any() or a.all()
Ich habe eine andere Lösung mit A.All () ausprobiert, wie vorgeschlagen:
Code: Select all
def contents_equal(list_1, list_2):
if [array not in list_2 for array in list_1].any():
return False
if [array not in list_1 for array in list_2].any():
return False
return True
< /code>
Dieser fühlte sich für mich weniger lesbar an, aber ich dachte, wenn es funktioniert hat, hat es funktioniert. Leider hat es nicht funktioniert. Ich habe die gleiche ValueError