[ Thiago M. Figueiredo ]: ----------------------------- |Opa galera, | |Estou tendo problema em fazer um resultado de um loop porque tenho |resultado em ISO-8859-1 e no mesmo loop tenho resultado UTF-8
Eu sugiro que vc examine a fonte dos dados (ou fontes) e tente equalizar o padrão de codificação (encoding) já na fronteira da sua aplicação. Por exemplo: - tenha certeza de que todos os dados armazenados no banco relacional estejam no mesmo encoding. - tenha certeza de que todos templates estejam escritos no mesmo encoding - ... e por aí vai | eu devo transformar os dois em um encode unico |correto? Correto. Mas *não* deve fazer isso no loop. | mais não sei com fazer isso, alguém já passo por isso? Corrija os dados manualmente na fonte, ou use utilitários (editores de texto que suportam múltiplos encodings) ou até mesmo o aplicativo iconv que pode ser scriptizado. Se precisar fazer a correção no código Python, use as funções decode e encode. >>> x = "Represtação de origem" >>> x 'Represta\xc3\xa7\xc3\xa3o de origem' # Está em UTF-8 note os 2 bytes -> 1 caracter acentuado >>> x.decode("utf-8").encode("iso-8859-1") 'Represta\xe7\xe3o de origem' # Agora está em iso-8859-1, note 1 byte -> 1 caracter acentuado Abração Senra Atenciosamente, Rodrigo Senra