20 Nov
2011
20 Nov
'11
4:50 p.m.
erhalte ich reproduzierbar das erste Ergebnis, obwohl über die Liste wie erwartet vom Anfang zum Ende (v. l. n. r.) iteriert wird. Ein Set wird in der Dokumentation als eine ungeordnete Sammlung von einzigartigen Elementen ("an unordered collection of unique elements") definiert, bloss liegt dieser anscheinend doch ein Ordnungsprinzip zugrunde. Welches?
Wie Vinzent vermutet: Sets basieren auf einer Hashtabelle. Bei der gegebenen Zahl von Elementen wird die Hashtabelle 16 Einträge erlauben; damit ergibt sich als Reihenfolge py> sorted((hash(x)%16,x) for x in ["a", "b", "e", "c", "g", "d"]) [(0, 'a'), (2, 'c'), (3, 'b'), (4, 'e'), (5, 'd'), (6, 'g')] Ciao, Martin