[Python-de] Dictionary sortieren???

Heike C. Zimmerer hcz at hczim.de
Wed May 28 20:04:24 EDT 2003


"Christian Klinger" <christian.klinger at econtec.de> writes:

> Hallo Liste!

> habe eine Liste die Dictionaris enthält!

Kann in den besten Familien passieren.

> a = [{'vorname': 'christian', 'name': 'klinger'}{'vorname':'alfons',
> 'name':'mustermann'}]

> Ich möchte nun in der Liste nach dem Key 'name' sortieren.

Wie so häufig: decorate, sort, undecorate:

dekoriert = [ [ d["name"], d] for d in a]
dekoriert.sort()
a = [ l[1] for l in dekoriert]

> mit einem  a.sort() sortiert er nur nach vorname (glaube ich)!

Glaubst Du.  Mich wundert, dass ein sort überhaupt geht.  Die
Reihenfolge im Dictionary ist schließlich willkürlich, unabhängig von
der Eingabe und nirgends garantiert.  Weiß jemand, was ein sort über
Dictionaries sortiert (ausser ihrer Länge)?

Übrigens: Wärst Du so nett und würdest auf den ganzen HTML-Bloat
verzichten?  Danke.

Gruß,

 Heike




More information about the Python-de mailing list