在服务器和客户端的数据交互的时候,要找到一种数据格式,服务端好处理,客户端也好处理,这种数据格式应该是一种统一的标准,不管在哪里端处理起来都是统一的,现在这种数据格式非常的多,比如最早的xml,再后来较为流行的json。
JSON是什么
JSON(JavaScript Object Notation, JS 对象标记) 是一种轻量级的数据交换格式。它基于 ECMAScript (w3c制定的js规范)的一个子集,采用完全独立于编程语言的文本格式来存储和表示数据。简洁和清晰的层次结构使得 JSON 成为理想的数据交换语言。
JSON 比 XML 更小、更快,更易解析。
json格式如下:
{
"sites": [
{
"name": "阿猫学编程",
"url": "www.bugingcode.com"
},
{
"name": "博客园",
"url": "www.cnblogs.com"
},
{
"name": "cndn",
"url": "www.csdn.com"
}
]
}
python中如何解析json
既然json是一个通用的数据交换方式,那么python中如何解析json呢?
在python中标准库就能对json字符串进行解析,同时把python的数据结构转换为json格式字符串。
把字符串json解析为python的数据结构:
#!/usr/bin/python
#coding=utf-8
"""
start python 项目
"""
import json
if __name__ == '__main__':
jsonstr="""{
"sites": [
{
"name": "阿猫学编程",
"url": "www.bugingcode.com"
},
{
"name": "博客园",
"url": "www.cnblogs.com"
},
{
"name": "cndn",
"url": "www.csdn.com"
}
]
}"""
print jsonstr
sites = json.loads(jsonstr)
print sites
print sites['sites']
for site in sites['sites']:
print site['name'],site['url']
把python中的数据结构转换为json格式:
#!/usr/bin/python
#coding=utf-8
"""
start python 项目
"""
import json
if __name__ == '__main__':
sites = {'sites':[{"name": "阿猫学编程","url": "www.bugingcode.com"},{"name": "博客园","url": "www.cnblogs.com"},{"name": "csdn","url": "www.csdn.com"}]}
jsonstr = json.dumps(sites)
print jsonstr
更多教程:阿猫学编程