[Python-de] geordnetes dict

Mike Müller mmueller at python-academy.de
Do Apr 18 23:15:40 CEST 2013


Am 18.04.13 23:10, schrieb Daniel Szoska:
> Hallo Philipp,
> 
> ab Python 2.7 gibt es OrderedDict (http://docs.python.org/2.7/library/collections.html?highlight=collection#collections.OrderedDict).
> 
> Da Du aber nach Python 2.6 gefragt hast, käme zum Beispiel das in Frage: http://code.activestate.com/recipes/576693/

OrderedDict gibt es auch als Backport ab Python 2.4
https://pypi.python.org/pypi/ordereddict/1.1

Viele Grüße
Mike
> 
> LG Daniel
> 
> Am 18.04.2013 um 22:51 schrieb Philipp Kraus <philipp.kraus at flashpixx.de>:
> 
>> Hallo,
>>
>> ich habe jetzt 2 Tage an einem Fehler gehangen, weil ich selbst nicht an die passende Datenstruktur gedacht habe:
>>
>> Ich habe ein dict in der Form:
>>
>> x = {
>>   "first" : {.....},
>>   "second" : {....},
>>  "aaa" : {....},
>> }
>>
>> so ist es jedenfalls im Quellcode definiert, ich iteriere nun über das dict, aber ich muss die Reihenfolge
>> beibehalten (ich hatte daran nicht gedacht). Die Reihenfolge muss exakt so sein, wie im Code angegeben
>> also first, second, aaa, real ist sie aber aaa, first, second und das führt bei mir zu einem Fehler.
>>
>> Ich hatte gesehen, dass es Komponenten wie z.B. das StableDict gibt. Meine Frage ist aber, ob man so etwas
>> auch ohne zusätzliche Komponenten realisieren kann. Mein erster Gedanke war, dies so zu machen:
>>
>> x = [
>>  { "first" : {...} },
>>  { "second" : {...} ),
>>  { "aaa" : {...} }
>> ]
>>
>> aber damit habe ich nicht mehr die Eindeutigkeit der Einträge gegeben. Was gibt es für Möglichkeiten
>> ab Python 2.6 dieses Problem sinnvoll zu lösen?
>>
>> Danke
>>
>> Phil
>>
>> _______________________________________________
>> python-de maillist  -  python-de at python.org
>> http://mail.python.org/mailman/listinfo/python-de
> 



Mehr Informationen über die Mailingliste python-de