Aus dieser Datenstruktur: [(1,2),(1,3),(1,4),(1,5)]
bin ich gebunden, um die eindeutigen Werte zu erhalten, oder [1,2,3,4,5]
. Was ist die einfache Lösung hier?Eindeutige Einzelwerte aus einer Liste von Tupelpaaren?
Antwort
können Sie verwenden set
mit Liste Verständnis:
lst = [(1,2),(1,3),(1,4),(1,5)]
set(j for i in lst for j in i)
# {1, 2, 3, 4, 5}
Dies ist der erste und einfachste/pythonischste Weg, die Frage zu lösen. Gute Antwort. –
Sie könnten auch ein Set-Verständnis verwenden: '{j für i in lst für j in i}'. :) – MSeifert
Verwenden Sie chain.from_iterable
aus dem itertools
Modul. Es wird allgemein als der idiomatische Weg angesehen, ein 2D-iterables im Gegensatz zu einem geschachtelten Listenverständnis zu reduzieren. Siehe this Frage.
>>> from itertools import chain
>>> set(chain.from_iterable([(1,2),(1,3),(1,4),(1,5)]))
{1, 2, 3, 4, 5}
chain.from_iterable
flacht die Liste und set
hält nur eindeutige Werte.
Um zurück in eine Liste zu konvertieren, übergeben Sie einfach den list
Konstruktor.
>>>list(set(chain.from_iterable([(1,2),(1,3),(1,4),(1,5)])))
[1, 2, 3, 4, 5]
In Ihrem erwartete Ausgabe der Reihenfolge der einzigartigen Elemente folgt der Reihenfolge des Erscheinens. Eine Möglichkeit, zu tun, wäre es (unter Verwendung einer externen Bibliothek, aber die Rezepte sind verfügbar in der itertools
-recipes section):
>>> from iteration_utilities import flatten, unique_everseen
>>> x = [(1,2),(1,3),(1,4),(1,5)]
>>> list(unique_everseen(flatten(x)))
[1, 2, 3, 4, 5]
- 1. Eindeutige Listen von einer Liste
- 2. Extrahieren eindeutige eindeutige Liste aus zwei Spalten
- 3. Anzeige Einzelwerte aus MySQL-Datenbank mit PHP
- 4. Erste eindeutige Werte aus einer Liste von Objekten mit einer Liste <string> als Eigenschaft
- 5. Mysql Einzelwerte aus einer Tabelle einfügen in eine neue Tabelle
- 6. Laravel Lumen | bekomme Einzelwerte aus Array
- 7. Wie wird eine eindeutige Liste von Spaltenwerten aus OData angezeigt?
- 8. Anzeige mehrere Einzelwerte in einer einzigen Spalte
- 9. Eindeutige Klassen in einer verschachtelten Liste
- 10. Summe der Einzelwerte in MongoDB
- 11. Zwei Arrays Vergleichen und Einzelwerte
- 12. Datenbank aus einer Liste von Wörterbüchern aktualisieren
- 13. aus einer Liste von Beispielen
- 14. Nur eindeutige Zeilen aus einer Tabelle zurückgeben
- 15. Liste nur eindeutige Benutzer
- 16. Wie kann ich eine Liste von Tupelpaaren in Erlang in einen Datensatz umwandeln?
- 17. Wie erhalten Sie eindeutige Werte mit der entsprechenden Anzahl von Vorkommen aus einer Liste in Python?
- 18. So erhalten Sie eindeutige Zahlen aus einer 2 Liste von Array
- 19. So transponieren Sie eine eindeutige Liste von Werten aus einer Spalte mit 'CopyToRange'
- 20. Eindeutige Dateinamen Ausgang aus einer SQL-Abfrage
- 21. Liste aus einer Liste auswählen?
- 22. C# Entfernen einer Liste aus einer Liste
- 23. Typoskript/Javascript: eine eindeutige Liste mit einer zusätzlichen Eigenschaft einstellen
- 24. Wie bekomme ich eindeutige Objektpaare aus einer Sammlung von Objekten?
- 25. Hinzufügen von Werten zu einer Liste aus einer anderen Liste
- 26. mehr Listen in einer Liste aus einer Liste von Strings
- 27. Eindeutige sortierte Liste der Spaltenwerte aus 2 Tabellen
- 28. Scala - erhalten eindeutige Werte aus Liste mit einem Twist
- 29. aus einer anderen Liste
- 30. So rufen Sie eine Liste bestimmter Werte aus einer Liste in einer Liste ab
verwendet einen Zwischensatz ok? – Nic