json数据
json解释
# JSON: 是采用键值对的结构组成的一组数据,是一种比较轻量级的数据交换格式,主要用在服务器和前端之间的数据传递。
# 现在的服务器端多以返回JSON格式的数据为主。
# JSON数据相对于其它格式的数据,数据量小,传输速度快,解析效率高,格式较为统一,解析起来比较方便。
# JSON字符串中的BOOL类型是:true/false
# Python中BOOL类型是:True/False
# XML: 类似于HTML,属于文本标记性语言,也可以作为服务端和前端之间的数据交互格式,解析过程较为复杂
# <xml>
# <p id='aaa'>一段话</p>
# </xml>
火狐浏览器安装一个
JSON Lite
的插件,方便看
json
数据(自动将服务器返回的
json
数据返回成字典)
导入json模块:import json
# JSON字符串和JSON对象之间的相互转化:
注:服务端返回的都是JSON字符串,所以获取数据需要将JSON字符串转化为对象(字典)。
# JSON字符串-->对象(字典):
json.loads()
json_string = '{"name":"张三", "age":25, "is_male":false, "height":"180"}'
# str/unicode
res = json.loads(json_string)
print type(res)
print res
print res['name'],res['age'],res['is_male']
# 字典对象-->JSON字符串:
json.dumps()
两个参数:
# indent: 设置键值对的缩进大小
# sort_keys: 是否按照键的首字母进行排序
data_dict = {"name":"zhagnsan", "age":30, "other":{"is_male":False, "weight":80, "height":170, "other":{"address":"郑州市"}}}
res = json.dumps(data_dict,indent=4,sort_keys=True)
print '-------------',type(res)
print res