sort() Umlaute und "_"-Zeichen...
Verfasst: Mittwoch 22. Februar 2006, 15:15
Ich möchte eine sortierung einer Liste vornehmen. Dabei sollen alle mit "_" ganz oben landen. Das klappt damit schon mal ganz gut:
Was mich jetzt noch stört, sind die Umlaute... Ein "Ä" landet ziemlich weit unten und nicht bei "Ä"... Nun könnte ich noch ein paar IFs einbauen, aber ich denke das ist keine gut Variante... Was kann man tun?
Code: Alles auswählen
def spezial_cmp(a,b):
""" Sortiert alle mit "_" beginnenen items nach oben """
x = a[0][0] == "_" # x ist True wenn erste Buchstabe ein "_" ist
y = b[0][0] == "_"
if x and y: return 0
if x: return -1
if y: return 1
return cmp(a,b)
dirs.sort(spezial_cmp)