簡體   English   中英

如何從python中的json文件的特定鍵獲取字段和值

[英]how to get fields and values from a specific key of json file in python

我正在嘗試返回特定鍵的字段和值,但出現錯誤,這是示例json格式:

"results": [
    {
      "time": "00:00",
      "app_name": "dcg",
      "avg": "7717"
    },
    {
      "time": "00:00",
      "app_name": "pds",
      "avg": "75.40223463687151"
    },
    {
      "time": "00:00",
      "app_name": "rdts",
      "avg": "1481.5555555555557"
    },
    {
      "time": "00:00",
      "app_name": "slbl",
      "avg": "786"
    },
    {
      "time": "01:00",
      "app_name": "pds",
      "avg": "36.4765625"
    }

這是我的代碼

import json

json_data=open("some.json")
jdata = json.load(json_data)

for k, v in jdata.results.items():
    for k1, v1 in v.items():
        print(k1)
            print(v1)

請注意,結果是鍵和時間字段,其中包含多個具有相同值的條目。

除了修復損壞的縮進,您還可以嘗試以下方法。 results是字典的鍵,其值可以作為jdata["results"]進行訪問。

for v in jdata["results"]:
    for k1, v1 in v.items():
        print(k1)
        print(v1)

編輯 :要將它們存儲在列表中,您可以執行

result = []

for v in jdata["results"]:
    for k1, v1 in v.items():
        result.append({"k1":v1})

[{'k1': '00:00'},
 {'k1': 'dcg'},
 {'k1': '7717'},
 {'k1': '00:00'},
 {'k1': 'pds'},
 {'k1': '75.40223463687151'},
 {'k1': '00:00'},
 {'k1': 'rdts'},
 {'k1': '1481.5555555555557'},
 {'k1': '00:00'},
 {'k1': 'slbl'},
 {'k1': '786'},
 {'k1': '01:00'},
 {'k1': 'pds'},
 {'k1': '36.4765625'}]        

我必須將您的JSON放在一組包含括號的{}中,否則JSON處理器無法解析它。

即..

{ 'result' : [...] }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM