Python: dict nicht sortieren

Diskutiere Python: dict nicht sortieren im Ruby, php, Perl, Python ... Forum im Bereich Programmieren unter Linux/Unix; Code: fruits = { 'oranges':4 'banana':10, 'apple':'2, } for index, item in fruits.items(): print index , ' -> ' ,...

  1. #1 omg_ein_anfänge, 27.06.2009
    omg_ein_anfänge

    omg_ein_anfänge Grünschnabel

    Dabei seit:
    27.06.2009
    Beiträge:
    2
    Zustimmungen:
    0
    Code:
    Code:
    fruits = {
        'oranges':4
        'banana':10,
        'apple':'2,
        }
    
    for index, item in fruits.items():
        print index , ' -> ' , item
    Ausgabe:
    Code:
    apple -> 2
    banana -> 10
    oranges -> 4
    
    Ja, also das funktioniert..ich habe nur das Problem, dass Python mir die einzelnen Eingaben im Dictionary alphabetisch sortiert ausgibt. Gibt es auch eine möglichkeit, das zu unterbinden (also das nicht "apples" sondern in dem fall "oranges" zuerst ausgegeben wird? Eben entsprechend der Reihung meiner Eingabe nach?)
     
  2. #2 foobarflu, 27.06.2009
    foobarflu

    foobarflu Foren As

    Dabei seit:
    21.12.2003
    Beiträge:
    79
    Zustimmungen:
    0
    die Sortierung erfolgt iirc entsprechend der internen Hash-Repräsentation, nicht alphabetisch. Probier dein Beispiel mit
    Code:
    {'foo' : 1, 'bar' : 2, 'flu' : 3 }
    
    dicts haben generell keine Ordnung, ergo wird die Reihenfolge der Eingabe nirgendwo gespeichert.
     
  3. #3 omg_ein_anfänge, 27.06.2009
    omg_ein_anfänge

    omg_ein_anfänge Grünschnabel

    Dabei seit:
    27.06.2009
    Beiträge:
    2
    Zustimmungen:
    0
    Gibt es denn dann irgendeine möglichkeit, eine Reihenfolge festzulegen? Oder eventuell eine Ausweichmöglichkeit, die so funktioniert, wie ich es mir wünschen würde?
     
  4. #4 bytepool, 28.06.2009
    bytepool

    bytepool Code Monkey

    Dabei seit:
    12.07.2003
    Beiträge:
    791
    Zustimmungen:
    0
    Ort:
    /home/sweden/göteborg
    Hi,

    wie foobarflu ja schon erklaerte, macht ein dict keinerlei Garantien ueber die Reihenfolge der enthaltenen Daten. Das wuerde ja auch dem Sinn eines dicts widersprechen. Du benutzt einen Hash, wenn du moeglichst schnellen Zugriff auf willkuerliche Daten ueber einen selbst definierten Index haben willst. Die Reihenfolge ist irrelevant.

    Wenn dir die Reihenfolge wichtig ist, musst du eine Liste nehmen.

    Solltest du wirklich diese beiden Konzepte in eine Datenstruktur packen wollen, kannst du dir ja einfach eine Klasse dafuer schreiben. Mir ist jedenfalls auch keine vorgefertigte Python Datenstruktur dafuer bekannt.

    mfg,
    bytepool
     
  5. #5 slackfan, 01.07.2009
    slackfan

    slackfan König

    Dabei seit:
    18.04.2006
    Beiträge:
    809
    Zustimmungen:
    0
    Ort:
    Bonn
Thema: Python: dict nicht sortieren
Besucher kamen mit folgenden Suchen
  1. python dic reihenfolge

    ,
  2. dict sortieren python

    ,
  3. python dict reihenfolge

    ,
  4. dictionary alphabetisch sortieren python#,
  5. python alphabetisch sortieren,
  6. python alpahbetisch sortieren,
  7. geordnetes Dictionary python
Die Seite wird geladen...

Python: dict nicht sortieren - Ähnliche Themen

  1. Python Script Hilfe

    Python Script Hilfe: Hey Leute, bin ganz neu hier und auch das Programmieren fällt mir noch nicht ganz so leicht... hab deswegen mal eine frage und hoffe jemand kann...
  2. Python-Interpreter PyPy 5.0 freigegeben

    Python-Interpreter PyPy 5.0 freigegeben: Der Python-Interpreter PyPy wurde in Version 5.0 veröffentlicht. Die aktuelle Version des Interpreters, der wesentlich schneller als der...
  3. Python-Interpreter PyPy 4.0 freigegeben

    Python-Interpreter PyPy 4.0 freigegeben: Der Python-Interpreter PyPy wurde in Version 4.0 veröffentlicht. Die aktuelle Version des Interpreters, der wesentlich schneller als der...
  4. Python 3.5 ist fertig

    Python 3.5 ist fertig: Über eineinhalb Jahre nach Python 3.4 haben die Entwickler jetzt die nächste Version veröffentlicht. In Python 3.5 gibt es zahlreiche Neuerungen...
  5. Python-Interpreter PyPy 2.6 freigegeben

    Python-Interpreter PyPy 2.6 freigegeben: Der Python-Interpreter PyPy wurde in Version 2.6 veröffentlicht. Der Schwerpunkt der aktuellen Version des Interpreters, der wesentlich schneller...
  1. Diese Seite verwendet Cookies um Inhalte zu personalisieren. Außerdem werden auch Cookies von Diensten Dritter gesetzt. Mit dem weiteren Aufenthalt akzeptierst du diesen Einsatz von Cookies.
    Information ausblenden