Python R2


JSON

Posted in Python por Arturo Elias Antón en 14 octubre 2008
Tags: , , , ,

Para empezara a ver JSON veremos lo que nos dice la wikipedia:

JSON, acrónimo de “JavaScript Object Notation”, es un formato ligero para el intercambio de datos. JSON es un subconjunto de la notación literal de objetos de JavaScript que no requiere el uso de XML.
La simplicidad de JSON ha dado lugar a la generalización de su uso, especialmente como alternativa a XML en AJAX. Una de las supuestas ventajas de JSON sobre XML como formato de intercambio de datos en este contexto es que es mucho más sencillo escribir un analizador semántico de JSON. En JavaScript, JSON puede ser analizado trivialmente usando el procedimiento eval(), lo cual ha sido fundamental para la aceptación de JSON por parte de la comunidad de desarrolladores Ajax, debido a la ubicuidad de JavaScript en casi cualquier navegador web.
[“http://es.wikipedia.org/wiki/JSON”]

Si bien JSON tiene origen en JavaScript, el sitio oficial de JSON www.json.org, nos ofrece librerías que no permiten trasformar los objetos JSON en objetos nativos de cada lenguaje o viceversa

Un objeto JSON está encerrado entre llaves “{}” y contiene propiedades separadas por coma, cada propiedad tiene un valor separado por dos punto “:” y cada valor puede ser:

  • String
  • Numero
  • Array
  • Función
  • Otro Objeto JSON

Un ejemplo de un JSON simple seria:

{
	“Nombre”:”Pedro”,
	“Apellido”: “Canoero”,
	“Edad”: 16,
	“Padres”: [“Maria”,”Juan”]
}

Las ventajas de JSON son muchas, es simple y rápido de escribir, su lectura es comprensible. JSON como todo objeto JavaScript se puede recorrer con un “for in” para saber todas las propiedades que posee.
JSON es indicado para el transporte de objetos entre un programa cliente y uno servidor en reemplazo de XML. Yo utilizo JSON en PyWars para el intercambio de datos entre el servidor de PyWars escrito en python y los clientes escritos en distintos lenguajes.

Un ejemplo en python seria.

#!/usr/bin/python
import json

dato="""
        {
            "Nombre":"Pedro",
            "Apellido": "Canoero",
            "Edad": 16,
            "Padres": ["Maria","Juan"]
     }
     """

obj=json.read(dato)

print obj["Nombre"]
print obj["Apellido"]
print obj["Edad"]
print obj["Padres"]

El efecto inverso

#!/usr/bin/python
import json
obj =  {
            "Nombre":"Pedro",
            "Apellido": "Canoero",
            "Edad": 16,
            "Padres": ["Maria","Juan"]
     }

print json.write(obj)

Observemos que parecido es escribir un JSON a un diccionario python 😉

Anuncios

2 comentarios to 'JSON'

Subscribe to comments with RSS o TrackBack to 'JSON'.


  1. Muy bueno el artículo.
    ¿Usaste alguna vez JSON para hacer webservices?. Yo estoy usando SOAP que usa XML con una librería de Python.
    Hasta ahora no tuve que meter mano en los XML, aunque sí tengo que verlos por ahí. Pero además de la legibilidad me interesa JSON porque es mucho menos el overhead que tiene al transferir datos.

  2. lopz said,

    me a tocado usar json para un proyecto, un servidor en python que lo genera y cuaquier cliente puede usar esos datos, yo lo he hecho con php y la verdad es que es realmente fácil y cómodo, con esto no tengo por que meterme con el XML de porras.

    saludos


Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s


A %d blogueros les gusta esto: