Python中将复杂json格式的数据提取value值的方法

Python的json有两种方法:

edcode:decode:

 当转化为字典类型时,取出数据时需要用到for循环进行遍历

下面是三个例子:

1、读取txt文件,其实就是string类型数据,获取值

txt文件内容如下:

 

 

 



 

2、 字典格式的数据,获取值

3、非正规json格式数据,取出值items = { "iot": "Ammeter", "ite": { "Power": { "value": "on", "time": 1510799670074 } }
或者是这样的形式:
items = {
"iot": "Ammeter",
"ite": {
"Power": {
"value": "on",
"time": 1510799670074
}}}
一、loads使用:

1、首先使用json加载字符串,然后取出value值
import json
items = '''{ "iot": "Ammeter", "ite": { "Power": [{ "value": "on", "time": 1510799670074 },{ "value": "off", "time": 1115464362163 }]} }'''
items = json.loads(items)
items1 = items["ite"]
items2 = items["ite"]['Power']
print(items1)
print(items2)
for item in items1:
print(item)
print(items1[item])
for item in items2:
print(item['value'])

输出:
{'Power': [{'value': 'on', 'time': 1510799670074}, {'value': 'off', 'time': 1115464362163}]}
[{'value': 'on', 'time': 1510799670074}, {'value': 'off', 'time': 1115464362163}]
Power
[{'value': 'on', 'time': 1510799670074}, {'value': 'off', 'time': 1115464362163}]
on
off

2、下列的标准json格式,取出count的值

page = html_str['data']['page']['count']
print(page)

输出:

460313
二、dumps使用

    import json
    items = '''{"iot":"Ammeter", "ite": { "Power": { "value": "on", "time": 1510799670074 } } }'''
    items = json.dumps(items,ensure_ascii=True,indent=10)
    print(items)

    输出结果:
    {
        "iot": "Ammeter",
        "ite": {
            "Power": {
                "value": "on",
                "time": 1510799670074
            }
        }
    }


posted @ 2022-03-16 18:18  锐洋智能  阅读(2360)  评论(0编辑  收藏  举报