Qual é a melhor maneira de remover acentos (normalizar) em uma string unicode do Python?

| | | | | | | | |

Tenho uma string Unicode em Python e gostaria de remover todos os acentos (diacríticos).

Encontrei na web uma maneira elegante de fazer isso (em Java):

  1. converter a string Unicode em seu formato normalizado longo (com um caractere separado para letras e diacríticos)
  2. remover todos os caracteres cujo tipo Unicode é "diacrítico".

Preciso instalar uma biblioteca como pyICU ou isso é possível apenas com a biblioteca padrão do Python? E quanto ao python 3?

Nota importante: eu gostaria de evitar código com um mapeamento explícito de caracteres acentuados para sua contraparte não acentuada.