[pyar] [Django] UnicodeDecodeError

Emiliano Dalla Verde Marcozzi edvm en fedoraproject.org
Mie Ago 6 06:35:17 ART 2014


El 5 de agosto de 2014, 13:31, Natalia Bidart <nataliabidart en gmail.com>
escribió:

>
> Hola Pedro,
>
> Primero que nada, te recomendaría que mires la charla de Facundo Batista
> sobre "Entendiendo unicode", si es que aún no la viste. Asumo por la
> consulta que estás con Python 2 (con Python 3 la historia es completamente
> distinta).
>
> El problema que estás teniendo es que estás mezclando, dentro de tu
> código, objetos unicode con cadenas de bytes encodeadas con utf-8 (son dos
> cosas bien distintas). Django opera con objetos unicode para todo lo que se
> refiere a cadenas de texto.
>
Excelente respuesta de Natalia. Agrego un ejemplo de como se mezclan
objetos unicode con str, copiando
y pegando desde:
http://python-gtk-3-tutorial.readthedocs.org/en/latest/unicode.html

"...Unfortunately, Python 2.x allows you to mix unicode and str if the
8-bit string happened to contain only 7-bit (ASCII) bytes, but would get
UnicodeDecodeError if it contained non-ASCII values:

>>> unicode_string = u"Fu\u00dfb\u00e4lle"
>>> utf8_string = " sind rund"
>>> unicode_string + utf8_string
u'Fu\xdfb\xe4lle sind rund'
>>> utf8_string = " k\xc3\xb6nnten rund sein"
>>> print utf8_string
 könnten rund sein
>>> unicode_string + utf8_string
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
UnicodeDecodeError: 'ascii' codec can't decode byte 0xc3 in position 2:
ordinal not in range(128)
..."

Saludos!

-- 
Broken code @ https://github.com/edvm

<edvm en python.org.ar>
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://listas.python.org.ar/pipermail/pyar/attachments/20140806/5a574e67/attachment.html>


More information about the pyar mailing list