535 Stimmen

Wie kann ich zwei Listen in Python vergleichen und Übereinstimmungen zurückgeben

Ich möchte zwei Listen nehmen und die Werte finden, die in beiden erscheinen.

a = [1, 2, 3, 4, 5]
b = [9, 8, 7, 6, 5]

returnMatches(a, b)

würde zurückkehren [5] zum Beispiel.

6voto

SuperNova Punkte 20412

Sie können auch itertools.product verwenden.

>>> common_elements=[]
>>> for i in list(itertools.product(a,b)):
...     if i[0] == i[1]:
...         common_elements.append(i[0])

5voto

Pavel Botsman Punkte 644

Eine weitere Möglichkeit, gemeinsame Werte zu finden:

a = [1, 2, 3, 4, 5]
b = [9, 8, 7, 6, 5]
matches = [i for i in a if i in b]

4voto

Prabhu Punkte 3132

Sie können verwenden

def returnMatches(a,b):
       return list(set(a) & set(b))

3voto

Adnan Ghaffar Punkte 1315

Sie können verwenden:

a = [1, 3, 4, 5, 9, 6, 7, 8]
b = [1, 7, 0, 9]
same_values = set(a) & set(b)
print same_values

Ausgabe:

set([1, 7, 9])

3voto

Matheus Araujo Punkte 5123

Wenn Sie einen booleschen Wert wünschen:

>>> a = [1, 2, 3, 4, 5]
>>> b = [9, 8, 7, 6, 5]
>>> set(b) == set(a)  & set(b) and set(a) == set(a) & set(b)
False
>>> a = [3,1,2]
>>> b = [1,2,3]
>>> set(b) == set(a)  & set(b) and set(a) == set(a) & set(b)
True

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X