Normalizar texto en Python

En muchos idiomas, como es el caso del español, hay caracteres que no tienen representación ASCII, como por ejemplo la á (que sí que tiene representación en Unicode).

Para evitar problemas o por simplificar, se ha dado una equivalencia entre los caracteres Unicode y los ASCII. A continuación os pondré un trozo de código en Python que hace esta conversión.

# -*- coding: utf-8 -*-
from unicodedata import normalize

def normalize_text ( text ):
  return normalize('NFKD', text).encode('ASCII', 'ignore')

Ejecutando el ejemplo:

>>> normalize_text ( 'aáaá eéeé iíií oóoó ñnñn AÀAÀ' )
b'aaaa eeee iiii oooo nnnn AAAA'

Comments

Comments powered by Disqus