python学习笔记21-json

对于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是列表

发布了34 篇原创文章 · 获赞 5 · 访问量 6919

猜你喜欢

转载自blog.csdn.net/weixin_43593303/article/details/100090153