Trouble sorting lists (unicode/locale related?)
news_nospam at fuglum.net
Sun Sep 21 13:32:44 CEST 2003
I'm having some trouble sorting lists. I suspect this might have
something to do with locale settings and/or character
Consider the following example, text containing norwegian special
characters æ, ø and å.
>>> liste = ["ola", "erlend", "trygve", "Ærlige anders", "Lars", "Øksemorderen", "Åsne", "Akrobatiske Anna", "leidulf"]
['Akrobatiske Anna', 'Lars', 'erlend', 'leidulf', 'ola', 'trygve',
'\xc5sne', '\xc6rlige anders', '\xd8ksemorderen']
There are a couple of issues for me here:
* The sorting method apparently places strings starting with uppercase
characters before strings staring with lowercase. I would like to
treat them them equally when sorting. OK, this could probably be fixed
by hacking with .toupper() or something, but isn't it possible to
achieve this in a more elegant way?
* The norwegian special characters are sorted in a wrong way.
According to our alphabet the correct order is (...) x, y, z, æ, ø å.
Python does it this way: (...) x, y, z, å, æ, ø ?
I would really appreciate any help and suggestions - I have been
fiddling with this mess for quite some time now :-)
More information about the Python-list