Si crees que no he entendido la pregunta, por que vuelves a repetir lo mismo? Y partiendo del hecho de que no he entendido la pregunta, creo que sigo sin entender cual es tu duda.
Andrey El 20 de marzo de 2013 23:36, Flavio Danesse <[email protected]> escribió: > No entendiste la pregunta. > > Era: > > que pasa si en tu aplicación tienes un diccionario bien grande con > diccionarios, listas, etc . . . anidados > quieres guardarlo todo y de una en un json? > > > El 20 de marzo de 2013 17:31, Andrey Antukh <[email protected]> escribió: > > Es muy simple: >> >> >>> import io >> >>> import json >> >>> kk = {str(x):u"kákà" for x in range(1000)} >> >>> with io.open("foo.json", "wb") as f: >> ... json.dump(kk, f) >> ... >> >>> >> >>> with io.open("foo.json", "rb") as f: >> ... kk2 = json.load(f) >> ... >> >>> len(kk2.keys()) >> 1000 >> >>> kk2[1] >> Traceback (most recent call last): >> File "<stdin>", line 1, in <module> >> KeyError: 1 >> >>> print kk2["1"] >> kákà >> >> Andrey >> >> >> El 20 de marzo de 2013 20:52, Flavio Danesse <[email protected]>escribió: >> >> 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 <[email protected]> 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 <[email protected]>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 <[email protected]> escribió: >>>>> >>>>> El 20 de marzo de 2013 19:53, Flavio Danesse <[email protected]>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 < >>>>>>> [email protected]> 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 < >>>>>>>> [email protected]> escribió: >>>>>>>> >>>>>>>> Aun asi da cosa ver ASCII Java program text! ¿Que editor utilizas? >>>>>>>>> On Mar 20, 2013 7:12 PM, "Quique Porta" <[email protected]> >>>>>>>>> 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 < >>>>>>>>>> [email protected]> 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 < >>>>>>>>>>> [email protected]> 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 >>>>>>>>>>>> [email protected] >>>>>>>>>>>> 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 >>>>>>>>>>> [email protected] >>>>>>>>>>> http://mail.python.org/mailman/listinfo/python-es >>>>>>>>>>> FAQ: http://python-es-faq.wikidot.com/ >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>> >>>>>>>>>> _______________________________________________ >>>>>>>>>> Python-es mailing list >>>>>>>>>> [email protected] >>>>>>>>>> http://mail.python.org/mailman/listinfo/python-es >>>>>>>>>> FAQ: http://python-es-faq.wikidot.com/ >>>>>>>>>> >>>>>>>>>> >>>>>>>>> _______________________________________________ >>>>>>>>> Python-es mailing list >>>>>>>>> [email protected] >>>>>>>>> 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 >>>>>>>> [email protected] >>>>>>>> http://mail.python.org/mailman/listinfo/python-es >>>>>>>> FAQ: http://python-es-faq.wikidot.com/ >>>>>>>> >>>>>>>> >>>>>>> >>>>>>> _______________________________________________ >>>>>>> Python-es mailing list >>>>>>> [email protected] >>>>>>> http://mail.python.org/mailman/listinfo/python-es >>>>>>> FAQ: http://python-es-faq.wikidot.com/ >>>>>>> >>>>>>> >>>>>> >>>>>> >>>>>> -- >>>>>> Andrey Antukh - Андрей Антух - <[email protected]> >>>>>> 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 >>>>>> [email protected] >>>>>> http://mail.python.org/mailman/listinfo/python-es >>>>>> FAQ: http://python-es-faq.wikidot.com/ >>>>>> >>>>>> >>>>> >>>>> _______________________________________________ >>>>> Python-es mailing list >>>>> [email protected] >>>>> http://mail.python.org/mailman/listinfo/python-es >>>>> FAQ: http://python-es-faq.wikidot.com/ >>>>> >>>>> >>>> >>>> >>>> -- >>>> Andrey Antukh - Андрей Антух - <[email protected]> >>>> 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 >>>> [email protected] >>>> http://mail.python.org/mailman/listinfo/python-es >>>> FAQ: http://python-es-faq.wikidot.com/ >>>> >>>> >>> >>> _______________________________________________ >>> Python-es mailing list >>> [email protected] >>> http://mail.python.org/mailman/listinfo/python-es >>> FAQ: http://python-es-faq.wikidot.com/ >>> >>> >> >> >> -- >> Andrey Antukh - Андрей Антух - <[email protected]> >> 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 >> [email protected] >> http://mail.python.org/mailman/listinfo/python-es >> FAQ: http://python-es-faq.wikidot.com/ >> >> > > _______________________________________________ > Python-es mailing list > [email protected] > http://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ > > -- Andrey Antukh - Андрей Антух - <[email protected]> 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 [email protected] http://mail.python.org/mailman/listinfo/python-es FAQ: http://python-es-faq.wikidot.com/
