Dict in OrderedDict konvertieren

Ich bin mit einigen Schwierigkeiten, den collections.OrderedDict Klasse. Ich verwende Python 2.7 auf Raspbian die Debian-Distribution für das Raspberry Pi. Ich bin versucht zu drucken, zwei Wörterbücher, um zum Vergleich (side-by-side) für ein text-adventure. Die Reihenfolge ist wichtig, zu vergleichen, genau.
Egal was ich versuche, die print-Wörterbücher in Ihrer gewohnten ungeordnete Art und Weise.

Hier ist, was ich bekomme, wenn ich es auf meinem RPi:

import collections

ship = {"NAME": "Albatross",
         "HP":50,
         "BLASTERS":13,
         "THRUSTERS":18,
         "PRICE":250}

ship = collections.OrderedDict(ship)

print ship
# OrderedDict([('PRICE', 250), ('HP', 50), ('NAME', 'Albatross'), ('BLASTERS', 13), ('THRUSTERS', 18)])

Offensichtlich, es ist etwas nicht richtig, weil er den Druck, dem Aufruf der Funktion und die Schlüssel und Wert-Gruppen in eine verschachtelte Liste...

Dies ist, was ich bekam durch das laufen etwas ähnliches auf meinem PC:

import collections

Joe = {"Age": 28, "Race": "Latino", "Job": "Nurse"}
Bob = {"Age": 25, "Race": "White", "Job": "Mechanic", "Random": "stuff"}

#Just for clarity:
Joe = collections.OrderedDict(Joe)
Bob = collections.OrderedDict(Bob)

print Joe
# OrderedDict([('Age', 28), ('Race', 'Latino'), ('Job', 'Nurse')])
print Bob
# OrderedDict([('Age', 25), ('Race', 'White'), ('Job', 'Mechanic'), ('Random', 'stuff')])

Dieser Zeit, es ist in Ordnung, aber es sollte nicht den Druck der anderen Dinge, die, obwohl Recht? (Die Umsetzung in die Liste und zeigt die Funktion aufrufen.)

Wo bin ich was mein Fehler? Es sollte nicht sein, etwas zu tun mit der pi-version von Python, weil es nur die Linux-version.

InformationsquelleAutor der Frage pythonpiboy | 2013-03-29

Schreibe einen Kommentar