doppelte elemente einer liste entfernen

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Costi
User
Beiträge: 544
Registriert: Donnerstag 17. August 2006, 14:21

doppelte elemente einer liste entfernen

Beitragvon Costi » Sonntag 27. August 2006, 17:33

wie kann ich möglichst recourcen schonend die mehrfachige elemente einer liste entfernen?

danke
rayo
User
Beiträge: 773
Registriert: Mittwoch 5. November 2003, 18:06
Wohnort: Schweiz
Kontaktdaten:

Beitragvon rayo » Sonntag 27. August 2006, 17:43

Hi

Kennst du den Datentyp set?

Falls nicht kannst du dies in der Doku nachlesen.
Könnte sein, dass dir sets helfen ... bei denen gibt es keine doppelten Elemente.

Gruss
Benutzeravatar
Michael Schneider
User
Beiträge: 567
Registriert: Samstag 8. April 2006, 12:31
Wohnort: Bremen
Kontaktdaten:

Beitragvon Michael Schneider » Sonntag 27. August 2006, 20:09

Hi Rayo,

Sets sind eine gute Möglichkeit, gibt es aber erst ab Python 2.3. Costi kann es auch über ein Dictionary lösen, da gibt es Schlüssel auch nur ein mal:

Code: Alles auswählen

>>> liste = [0, 3, 1, 1, 2, 3]
>>> dict(zip(liste, liste)).keys()
[0, 1, 2, 3]


Mit "zip(liste, liste)" erzeugst Du eine Liste mit der gleichen Anzahl an Elementen wie liste, allerdings mit Wert-Paaren. Aus dieser wird vom Constructor ein Dictionary erzeugt, das automatisch doppelte Vorkommen entfernt. Mit einer kleinen Änderung könntest Du in dem Dictionary sogar die Anzahl der Vorkommen zählen.

Grüße,
der Michel
Diese Nachricht zersört sich in 5 Sekunden selbst ...
Costi
User
Beiträge: 544
Registriert: Donnerstag 17. August 2006, 14:21

Beitragvon Costi » Montag 28. August 2006, 13:33

thx, klappt wie geschmiert

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder