JSON格式

1. 简介

JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式。 可以理解为是一种跨语言的文本格式(即与具体语言无关),方便数据传输与协作,易于人阅读和编写,同时也易于机器解析和生成。

2. 结构与规则

JSON格式很简单,下面举一个例子来说明:

{ "seed": "QQQ"   
   "id": 1,        
   "n_validation": [2, 3, 4, 5, 6],     
   "TEXT": [       
         {            
                   "test": "A",             
                   "count": 2        
         }, 
         {         "test": "B", 
                   "count": 1         
         }
     ]
}

上面的这个文本就是按照JSON格式生成的,可以看到JSON格式是基于两种元素构建的:
1. 键值对:如 “seed”就是键,“药品”就是值, 类似于Python中的字典
2. 值的有序列表:如键“n_validation”所对应的值[2, 3, 4, 5, 6]即为一个列表

下面描述格式规范:
JSON对象是一个无序的键值对的集合。一个JSON对象以“{”(左括号)开始,“}”(右括号)结束。每个“键”后跟一个冒号,键值对之间使用逗号分隔。
数组是值的有序集合。一个数组以“[”(左中括号)开始,“]”(右中括号)结束。值之间使用逗号分隔。

最后,键值对和JSON对象可以进行嵌套,如键为”TEXT”的值所示。

3. Python导入导出

下面以Python为例介绍JSON的导入与导出(JSON模块是Anaconda自带的,不用另行安装):

​导入:

import json 
​data = { 'a' : 1, 'b' : 2, 'c' : 3, 'd' : 4, 'e' : 5 }
​json = json.dumps(data)
print json

以上代码执行结果为:

{"a": 1, "c": 3, "b": 2, "e": 5, "d": 4}

导出:

import json

jsonData = '{"a":1,"b":2,"c":3,"d":4,"e":5}'

text = json.loads(jsonData)

prin(text)

以上代码执行结果为:

{u'a': 1, u'c': 3, u'b': 2, u'e': 5, u'd': 4}

你可能感兴趣的:(随笔)