Codecs para consola Windows
Rafael Villar Burke
pachi en mmn-arquitectos.com
Vie Mar 11 11:40:42 CET 2005
Marcos Perez wrote:
> Hola a todos,
> en una aplicación por consola para Windows, me encuentro que al
> hacer print de cualquier cadena que tenga acentos o caracteres por
> encima de 128, estos salen estropeados. Intento hacer un:
> print "El niño saltó".encode("cp850")
> por ejemplo, y da el error:
> UnicodeDecodeError: 'ascii' codec can't decode byte 0xfa in position
> 17: ordinal not in range(128)
>
> ¿Alguna sugerencia?
>
Lee antes como unicode y luego usa la codificación que quieras...
encoding = locale.getpreferredencoding()
cp850conv = lambda x : unicode(x, encoding).encode('cp850')
print cp850conv("El niño saltó")
Saludos,
Pachi
Más información sobre la lista de distribución Python-es