[pyar] Problema interesante: el anti-string

Claudio Freire klaussfreire en gmail.com
Jue Ago 5 14:55:19 ART 2010


2010/8/5 Roberto Alsina <ralsina en netmanagers.com.ar>

> Puede ser. En este caso en particular se termina convertiendo todo a
> QString
> asi que no me ayuda.
>

¿entonces el que ordena es QT?

Eso puede cambiar las reglas de juego considerablemente, porque seguro que
QT ordena según el collation. Tendrías que saber el collation, y todo lo que
se discutió.

Para evitar eso podrías forzar el orden de python (binario) convirtiendo a
una cadena collation-insensitive:

>>> l =  ["hola pepe", "hola juan", "pepe fue al médico", "yo también"]
>>> l2 = map(lambda
l:"".join(map("%02X".__mod__,map(0xFF.__and__,map(int.__invert__,map(ord,l))))),
l)
>>> l3 = sorted(list(zip(l2,l)))
>>> l3
[('8690DF8B9E929D963C5691', 'yo tambi\xc3\xa9n'),
('8F9A8F9ADF998A9ADF9E93DF923C569B969C90', 'pepe fue al m\xc3\xa9dico'),
('9790939EDF8F9A8F9A', 'hola pepe'), ('9790939EDF958A9E91', 'hola juan')]
>>> sorted(l)
['hola juan', 'hola pepe', 'pepe fue al m\xc3\xa9dico', 'yo tambi\xc3\xa9n']

Claro que esa columna extra tiene que estar oculta o se pudre todo ;)
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://listas.python.org.ar/pipermail/pyar/attachments/20100805/af695732/attachment.html>


More information about the pyar mailing list