[Python-es] Ordenando con strcoll
Sio2
sio2sio2 en gmail.com
Lun Feb 8 19:48:14 CET 2010
Estoy intentando ordenar una serie de nombres alfabéticamente, pero hago
algo mal o esta función no me va.
Veamos:
$ python
Python 2.5.4 (r254:67916, Nov 19 2009, 22:14:20)
[GCC 4.3.4] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import locale
>>> locale.setlocale(locale.LC_ALL,'')
'es_ES en euro'
>>> a="Diaz Flor, M"
>>> b="Diaz Flores, M"
Como veis no pongo ni los acentos para poder usar cmp:
>>> cmp(a,b)
-1
Lo esperable, "a" va antes que "b". Sin embargo:
>>> locale.strcoll(a,b)
8
"b" antes que "a" y, como consecuencia, el listado no sale ordenado
correctamente.
¿Se me escapa algo? ¿No funciona bien strcoll?
(Con es_ES.UTF-8 me sucede exactamente lo mismo)
Gracias de antemano.
--
Si quieres que te sigan las mujeres, ponte delante.
--- Francisco de Quevedo ---
Más información sobre la lista de distribución Python-es