对于XML
我们在中间不使用python语法,不使用java语法,但是使用XML的语法
对于JSON
我们在中间不使用python语法,不使用java语法,但是使用javascript的语法
json is very native to javascript
知识点1:
json是长什么样的
import json
data = '''{
"name" : "Chuck",
"phone" : {
"type" : "intl",
"number" : "+1 734 303 4456"
},
"email" : {
"hide" : "yes"
}
}'''
info = json.loads(data)
print('Name:',info["name"])
print('Hide:',info["email"]["hide"])
在这里有几个注意点:
- JSON将数据表示为嵌套的“列表”和“字典”。
- json是用一种在python中类似与字典的形式来表现的,这种形式在java中被称作为object,都是有key-value配对的。
- json和xml相比的不同之处,json没有start tag和end tag,也没有attribute
- 注意,info = json.loads(data)返回的是一个python dictionary!!!
程序输出结果为:
Name: Chuck
Hide: yes
第二段代码实例:
import json
input = '''[
{ "id" : "001",
"x" : "2",
"name" : "Chuck"
} ,
{ "id" : "009",
"x" : "7",
"name" : "Chuck"
}
]'''
info = json.loads(input)
print('User count:', len(info))
for item in info:
print('Name', item['name'])
print('Id', item['id'])
print('Attribute', item['x'])
输出结果为:
User count: 2
Name Chuck
Id 001
Attribute 2
Name Chuck
Id 009
Attribute 7
这一段代码和上一段的区别就是json在这一段是用list表示的,在上一段是用dictionary来表示的。
刚才上一段是字典中含有子字典,最终返回的info是字典形式
这里的一段是列表中含有子字典,最终返回的info是列表