Wie finde ich einzelne Elemente in einer Python-list?

5 Antworten

Kannst es einfach mit einer for Schleife machen wo du überprüfst ob der letzte Wert mit dem jetztigen Wert übereinstimmt oder du benutzt eine Hashmap. Hier benutzt du eine for each Schleife und guckst zuerst ob das Element, also die Zahl in der Hash map in den Keys der Hasmap existiert, wenn ja setzt du die value unter dem Key +=1 (value ist hier der Counter der individuellen Zahl) wenn nein setzt du das neue Element in den keys hinzu.

um nun eine Liste ohne doppelte Zahlen, oder Zeichen zu bekommen lässt du dir alle keys der Hasmap geben und in eine neue Liste schreibenY

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

iterator = filter(lambda x: a.count(x)==1, a)

print(list(iterator))

Zum Beispiel

>>> import collections
>>> [k for k,v in collections.Counter( [1,2,2,3,4,5,5,6,6,7] ).items() if v==1]
[1, 3, 4, 7]
list.cout(n) 

Gibt zurück, wie oft n in list vorhanden ist. Also heißt es :


liste = [1,2,2,3,4,5,5,6,6,7]
a = list(filter(lambda x : liste.count(x) == 1, liste))

Du kannst im ersten Durchlauf ein Dict mit int zu count Werten populieren.

Dann kannst du durch die liste (oder die dict keys) durlaufen und die keys ausgeben, für die count =1 ist