请帮我在python中解析这个json。
{ "IT" : [
{ "firstName" : "ajay",
"lastName" : "stha",
"age" : 24 },
{ "firstName" : "Michiel",
"lastName" : "Og",
"age" : 35 }
],
"sales" : [
{ "firstName" : "Guru",
"lastName" : "red",
"age" : 27 },
{ "firstName" : "Jim",
"lastName" : "Galley",
"age" : 34 }
]
}
如何在Python中解析这个json?请帮帮我
答案 0 :(得分:5)
使用json:
import json
data = json.loads(stringinput)
答案 1 :(得分:1)
import json
jsonResponse = json.loads(data)
jsonDataSales = jsonResponse["sales"]
jsonDataIt = jsonResponse["IT"]
it_first_name_list = []
it_last_name_list = []
it_age_list = []
sales_first_name_list = []
sales_last_name_list = []
sales_age_list = []
for item in jsonDataIt:
it_first_name_list.append(item.get("firstName"))
it_last_name_list.append(item.get("lastName"))
it_age_list.append(item.get("age"))
for item in jsonDataSales:
sales_first_name_list.append(item.get("firstName"))
sales_last_name_list.append(item.get("lastName"))
sales_age_list.append(item.get("age"))
答案 2 :(得分:1)
具有嵌套结构的Python字典与JSON数据非常相似, 虽然Python的变量和表达式支持更丰富的结构选项(任何部分 以下内容可以是Python代码中的任意表达式,例如。
>>> name = dict(first='Bob', last='Smith')
>>> rec = dict(name=name, job=['dev', 'mgr'], age=40.5)
>>> rec
{'job': ['dev', 'mgr'], 'name': {'last': 'Smith', 'first': 'Bob'}, 'age': 40.5}
这里显示的最终字典格式是Python代码中的有效文字,差不多 按原样打印时传递JSON,但json模块使翻译正式 -here将Java对象与JSON序列化字符串表示形式进行转换 在记忆中:
>>> import json
>>> json.dumps(rec)
'{"job": ["dev", "mgr"], "name": {"last": "Smith", "first": "Bob"}, "age": 40.5}'
>>> S = json.dumps(rec)
>>> S
'{"job": ["dev", "mgr"], "name": {"last": "Smith", "first": "Bob"}, "age": 40.5}'
>>> O = json.loads(S)
>>> O
{'job': ['dev', 'mgr'], 'name': {'last': 'Smith', 'first': 'Bob'}, 'age': 40.5}
>>> O == rec
True
将Python对象与JSON数据字符串进行转换同样简单明了 在文件中。在存储到文件之前,您的数据只是Python对象; JSON 当模块从JSON文本表示中加载时,模块会从JSON文本表示中重新创建它们 文件:
>>> json.dump(rec, fp=open('testjson.txt', 'w'), indent=4)
>>> print(open('testjson.txt').read())
{
"job": [
"dev",
"mgr"
],
"name": {
"last": "Smith",
"first": "Bob"
},
"age": 40.5
}
>>> P = json.load(open('testjson.txt'))
>>> P
{'job': ['dev', 'mgr'], 'name': {'last': 'Smith', 'first': 'Bob'}, 'age': 40.5}