¿Cuál es la mejor manera de eliminar los acentos (normalizar) en una cadena Unicode de Python?

| | | | | | | | |

Tengo una cadena Unicode en Python y me gustaría eliminar todos los acentos (diacríticos).

Encontré en la web una forma elegante de hacerlo (en Java):

  1. convierta la cadena Unicode a su forma larga normalizada (con un carácter separado para letras y diacríticos)
  2. elimine todos los caracteres cuyo tipo Unicode es "diacrítico".

¿Necesito instalar una biblioteca como pyICU o es posible hacerlo solo con la biblioteca estándar de Python? ¿Y qué pasa con python 3?

Nota importante: me gustaría evitar el código con un mapeo explícito de caracteres acentuados a su contraparte sin acento.