Eine Datenstruktur wie diese.Python: Sortieren eines Diktats von Dicts auf einem Schlüssel
{
'ford': {'count': 3},
'mazda': {'count': 0},
'toyota': {'count': 1}
}
Was ist der beste Weg, über den Wert von count
innerhalb der Werte des Top-Level-dict zu sortieren?
>>> from collections import OrderedDict
>>> ordered = OrderedDict(sorted(d.items(), key=lambda (k, v): v['count']))
>>> ordered
OrderedDict([('mazda', {'count': 0}), ('toyota', {'count': 1}), ('ford', {'count': 3})])
>>> ordered.keys() # this is guaranteed to come back in the sorted order
['mazda', 'toyota', 'ford']
>>> ordered['mazda'] # still a dictionary
{'count': 0}
Version betrifft::
Wörterbuch ist ein ungeordneter Datentyp, der nicht sortiert werden kann. Sie können 'collections.OrderedDict' verwenden. – 0xc0de