latin transliteration
Chema Cortes
pych3m4 en gmail.com
Dom Dic 20 03:19:03 CET 2009
El día 19 de diciembre de 2009 21:01, Rolando Espinoza La Fuente
<darkrho en gmail.com> escribió:
> Hola, ¿conocen algún módulo para "transliteration" que funcione correctamente?
>
> He probado todo lo que encontre y ninguno me da el resultado que quiero,
> por ejemplo: "américa" -> "america"
>
> Vean:
>
> In [3]: AsciiDammit.asciiDammit(u'américa'.encode('utf-8'))
> Out[3]: 'amAfArica'
>
> In [9]: unicodedata.normalize('NFKD', u'américa').encode('ASCII', 'ignore')
> Out[9]: 'amArica'
>
> In [10]: unidecode.unidecode(u'américa')
> Out[10]: u'amA(c)rica'
unicode.normalize() requiere un poco más de trabajo:
def slugify(s):
from unicodedata import normalize
return ''.join(normalize("NFD",c)[0] for c in s)
slugify(u"América") --> u"America"
+refs:
http://listas.aditel.org/archivos/python-es/2007-March/016813.html
http://listas.aditel.org/archivos/python-es/2007-April/016988.html
_______________________________________________
Lista de correo Python-es
http://listas.aditel.org/listinfo/python-es
FAQ: http://listas.aditel.org/faqpyes
Más información sobre la lista de distribución Python-es