ok

Esto funciona para guardar una cadena con tildes, pero que pasa si en tu
aplicación tienes un diccionario bien grande con diccionarios, listas, etc
. . . anidados y quieres guardarlo todo y de una en un json?



El 20 de marzo de 2013 16:40, Andrey Antukh <n...@niwi.be> escribió:

> Modulo json fue incorporado en python 2.6 tomando como codigo base
> simplejson.
> La regla principal, es usar siempre siempre y siempre, unicode (sea con
> UTF-8, UTF-16 o UTF-32) (para nuestro caso es utf-8).
> Y no habra problemas. Si no cuidas el encoding con el que editas los
> ficheros, pueden pasarte esas cosas.
>
> Usar un modulo externo y decir que es una solucion al problema, lo unico
> que dice es que el problema sigue ahi, y que el modulo que usas traga mas
> mierda y sea menos estricto, pero de ninguna manera te ha solucionado el
> problema de encoding.
>
> >>> import json
> >>> kk = u"cadená con tìldes"
> >>> dd = json.dumps({"foo": kk})
> >>> dd
> '{"foo": "caden\\u00e1 con t\\u00ecldes"}'
> >>> print json.loads(dd)
> {u'foo': u'caden\xe1 con t\xecldes'}
> >>> print json.loads(dd)['foo']
> cadená con tìldes
>
> Un saludo.
> Andrey
>
>
> El 20 de marzo de 2013 20:29, Flavio Danesse <fdane...@gmail.com>escribió:
>
> yo tuve el mismo problema que él y esta fue la solución.
>>
>> La verdad no sabia que json era de python y simplejson no.
>>
>> El 20 de marzo de 2013 16:20, Andrey Antukh <n...@niwi.be> escribió:
>>
>> El 20 de marzo de 2013 19:53, Flavio Danesse <fdane...@gmail.com>escribió:
>>>
>>>> import simplejson
>>>> archivo = open(path, 'w')
>>>> archivo.write(simplejson.dumps(salida))
>>>> archivo.close()
>>>>
>>>>
>>> No entiendo la necesidad de liar a una persona con bibliotecas
>>> que están fuera de python, cuando la pregunta va directa sobre un modulo de
>>> python.
>>>
>>>
>>>
>>>>
>>>> El 20 de marzo de 2013 15:35, Diego Uribe Gamez <
>>>> diego.uribe.ga...@gmail.com> escribió:
>>>>
>>>> estoy usando nano,
>>>>>
>>>>> para lo que me pregunto quique:
>>>>>
>>>>> print u"%s" % var
>>>>> UnicodeDecodeError: 'ascii' codec can't decode byte 0xf3 in position
>>>>> 53: ordinal not in range(128)
>>>>>
>>>>> lo que sucede es que var biene de otro archivo y es un string, no
>>>>> logro codificarlo.
>>>>>
>>>>>
>>>>>
>>>>> El 20 de marzo de 2013 13:33, Alberto Chamorro <
>>>>> a.chamorro.r...@gmail.com> escribió:
>>>>>
>>>>> Aun asi da cosa ver ASCII Java program text! ¿Que editor utilizas?
>>>>>>  On Mar 20, 2013 7:12 PM, "Quique Porta" <quiquepo...@gmail.com>
>>>>>> wrote:
>>>>>>
>>>>>>> ¿Has probado esto?
>>>>>>> var = *u*"texto con tildes, Categorías "
>>>>>>>
>>>>>>> poniendo la "u" delante de la cadena
>>>>>>>
>>>>>>> El 20 de marzo de 2013 18:56, Diego Uribe Gamez <
>>>>>>> diego.uribe.ga...@gmail.com> escribió:
>>>>>>>
>>>>>>>> tan raro yo no sabia y tampoco entiendo:
>>>>>>>>
>>>>>>>> file texto.py
>>>>>>>> texto.py: ASCII Java program text
>>>>>>>>
>>>>>>>> sobre el encabezado esta el # -*- coding: utf-8 -*- correctamente
>>>>>>>>
>>>>>>>> Como hago para saber con un print el tipo de codificación antes de
>>>>>>>> hacer el encode('utf-8')?
>>>>>>>>
>>>>>>>>
>>>>>>>> El 20 de marzo de 2013 12:25, Alberto Chamorro <
>>>>>>>> a.chamorro.r...@gmail.com> escribió:
>>>>>>>>
>>>>>>>>> Si lo tienes en un fichero .py comprueba la codificacion con la
>>>>>>>>> que has guardado el fichero (en unix seria con el comando file)
>>>>>>>>>
>>>>>>>>> Tambien se recomienda añadir a los programas la linea de coding:
>>>>>>>>>
>>>>>>>>> # -*- coding: utf-8 -*-
>>>>>>>>>
>>>>>>>>> Un saludo
>>>>>>>>>
>>>>>>>>> _______________________________________________
>>>>>>>>> Python-es mailing list
>>>>>>>>> Python-es@python.org
>>>>>>>>> http://mail.python.org/mailman/listinfo/python-es
>>>>>>>>> FAQ: http://python-es-faq.wikidot.com/
>>>>>>>>>
>>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> --
>>>>>>>>   *Diego Alonso Uribe Gamez*
>>>>>>>> ------------------------------
>>>>>>>>
>>>>>>>> *Desarrollador web*
>>>>>>>>
>>>>>>>> Twitter: @DiegoUG <http://www.twitter.com/DiegoUG>
>>>>>>>>
>>>>>>>> Google+: http://gplus.to/diegoug
>>>>>>>> ------------------------------
>>>>>>>>
>>>>>>>>
>>>>>>>> _______________________________________________
>>>>>>>> Python-es mailing list
>>>>>>>> Python-es@python.org
>>>>>>>> http://mail.python.org/mailman/listinfo/python-es
>>>>>>>> FAQ: http://python-es-faq.wikidot.com/
>>>>>>>>
>>>>>>>>
>>>>>>>
>>>>>>> _______________________________________________
>>>>>>> Python-es mailing list
>>>>>>> Python-es@python.org
>>>>>>> http://mail.python.org/mailman/listinfo/python-es
>>>>>>> FAQ: http://python-es-faq.wikidot.com/
>>>>>>>
>>>>>>>
>>>>>> _______________________________________________
>>>>>> Python-es mailing list
>>>>>> Python-es@python.org
>>>>>> http://mail.python.org/mailman/listinfo/python-es
>>>>>> FAQ: http://python-es-faq.wikidot.com/
>>>>>>
>>>>>>
>>>>>
>>>>>
>>>>> --
>>>>>   *Diego Alonso Uribe Gamez*
>>>>> ------------------------------
>>>>>
>>>>> *Desarrollador web*
>>>>>
>>>>> Twitter: @DiegoUG <http://www.twitter.com/DiegoUG>
>>>>>
>>>>> Google+: http://gplus.to/diegoug
>>>>> ------------------------------
>>>>>
>>>>>
>>>>> _______________________________________________
>>>>> Python-es mailing list
>>>>> Python-es@python.org
>>>>> http://mail.python.org/mailman/listinfo/python-es
>>>>> FAQ: http://python-es-faq.wikidot.com/
>>>>>
>>>>>
>>>>
>>>> _______________________________________________
>>>> Python-es mailing list
>>>> Python-es@python.org
>>>> http://mail.python.org/mailman/listinfo/python-es
>>>> FAQ: http://python-es-faq.wikidot.com/
>>>>
>>>>
>>>
>>>
>>> --
>>> Andrey Antukh - Андрей Антух - <n...@niwi.be>
>>> http://www.niwi.be/about.html
>>> http://www.kaleidos.net/A5694F/
>>>
>>> "Linux is for people who hate Windows, BSD is for people who love UNIX"
>>> "Social Engineer -> Because there is no patch for human stupidity"
>>>
>>> _______________________________________________
>>> Python-es mailing list
>>> Python-es@python.org
>>> http://mail.python.org/mailman/listinfo/python-es
>>> FAQ: http://python-es-faq.wikidot.com/
>>>
>>>
>>
>> _______________________________________________
>> Python-es mailing list
>> Python-es@python.org
>> http://mail.python.org/mailman/listinfo/python-es
>> FAQ: http://python-es-faq.wikidot.com/
>>
>>
>
>
> --
> Andrey Antukh - Андрей Антух - <n...@niwi.be>
> http://www.niwi.be/about.html
> http://www.kaleidos.net/A5694F/
>
> "Linux is for people who hate Windows, BSD is for people who love UNIX"
> "Social Engineer -> Because there is no patch for human stupidity"
>
> _______________________________________________
> Python-es mailing list
> Python-es@python.org
> http://mail.python.org/mailman/listinfo/python-es
> FAQ: http://python-es-faq.wikidot.com/
>
>
_______________________________________________
Python-es mailing list
Python-es@python.org
http://mail.python.org/mailman/listinfo/python-es
FAQ: http://python-es-faq.wikidot.com/

Responder a