Reihenfolgeänderungen bei Mengenkonvertierungen
Beim Konvertieren einer Liste in eine Menge in Python scheint die Reihenfolge der Elemente geändert zu werden. Dies kann rätselhaft sein, da Listen die Reihenfolge ihrer Elemente beibehalten, während Mengen ungeordnete Datenstrukturen sind. Der Grund für diese Diskrepanz liegt in der grundlegenden Natur von Sets.
Sets sind darauf ausgelegt, effiziente Mitgliedschaftstests durchzuführen und behalten nicht die Einfügereihenfolge von Elementen bei. Dies liegt daran, dass Sätze intern als Hash-Tabellen dargestellt werden, in denen Elemente zur schnelleren Suche verschlüsselt gespeichert werden.
So bewahren Sie die Reihenfolge auf
Wenn Sie die Beibehaltung benötigen Für die Reihenfolge Ihrer Datensammlungen gibt es mehrere Alternativen zur Verwendung von Sätzen:
B = set([6, 20, 1]) result = [x for x in A if x not in B]
import collections A = collections.OrderedDict.fromkeys([1, 2, 20, 6, 210]) B = collections.OrderedDict.fromkeys([6, 20, 1]) result = collections.OrderedDict.fromkeys(x for x in A if x not in B)
Das obige ist der detaillierte Inhalt vonWarum ändert die Konvertierung einer Liste in einen Satz die Reihenfolge und wie kann ich sie beibehalten?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!