español - python utf 8 header
Trabajar con la codificación utf-8 en la fuente de Python (2)
Esta pregunta ya tiene una respuesta aquí:
$ cat bla.py
u = unicode(''d…'')
s = u.encode(''utf-8'')
print s
$ python bla.py
File "bla.py", line 1
SyntaxError: Non-ASCII character ''/xe2'' in file bla.py on line 1, but no encoding declared; see http://www.python.org/peps/pep-0263.html for details
¿Cómo puedo declarar las cadenas utf-8 en el código fuente?
En el encabezado de origen puede declarar:
#!/usr/bin/env python
# -*- coding: utf-8 -*-
....
Se describe en el PEP 0263 :
Luego puedes usar UTF-8 en cadenas:
#!/usr/bin/env python
# -*- coding: utf-8 -*-
u = ''idzie wąż wąską dróżką''
uu = u.decode(''utf8'')
s = uu.encode(''cp1250'')
print(s)
Esta declaración no es necesaria en Python 3 ya que UTF-8
es la codificación de origen predeterminada (ver PEP 3120 ).
Además, puede valer la pena verificar que su editor de texto codifica correctamente su código en utf-8. De lo contrario, es posible que tenga caracteres invisibles que no se interpretan como utf-8.
No olvide verificar si su editor de texto codifica correctamente su código en utf-8. De lo contrario, es posible que tenga caracteres invisibles que no se interpretan como utf-8.