¿Cómo convertir una cadena de codificación conocida a utf-8 sobre la marcha en Python?

Sé acerca de la biblioteca de códecs, pero no quiero escribir una cadena en un archivo.

¿Hay alguna forma de mantener la cadena resultante en la variable?

preguntado el 09 de marzo de 12 a las 14:03

2 Respuestas

Supongamos que tienes una cadena s codificar en encoding. Para obtener la misma cuerda en UTF-8, puedes usar

s.decode(encoding).encode("utf-8")

respondido 09 mar '12, 14:03

¡¡Gracias!! No sé por qué, pero este método no me funcionó y, después de reescribirlo, ¡todo funciona bien! - hjdm

Si tiene un archivo codificado en ascii, f:

1)f1=unicode(f) 2)f2=f1.encode('utf-8')

De esta manera, se deshace de errores como: "UnicodeEncodeError: el códec 'ascii' no puede codificar el carácter u '\ xdf' en la posición 5: ordinal no está en el rango (128)"

Respondido el 26 de diciembre de 12 a las 13:12

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.