簡體   English   中英

從python中的嵌套數組中計算嵌套的json對象

[英]Count nested json objects from a nested array in python

我有一個這樣的 JSON 文件:

在此處輸入圖片說明

如您所見,對於化學類別,有兩個塊。 在這個 JSON 文件中,有不同的類別,我想計算每個類別中有多少個“id”。

所以對於這個例子,我想要在“化學”下找到塊的總和。

這就是我所做的,但我收到“類型錯誤:字符串索引必須是整數”

import json


with open('prize.json') as jsonfile:

  nobel=json.load(jsonfile)
  prizes = nobel

  count = sum([len(item['prizes']['chemistry']) for item in nobel])
  print(count)

編輯:

這是 JSON 鏈接: http : //api.nobelprize.org/v1/prize.json

這里是 JSON 查看器,因為它非常混亂: http : //jsonviewer.stack.hu/

嘗試這個 ?

sum([len(item["laureates"]) for item in nobel["prizes"] if item["category"] is 'chemistry' and "laureates" in item])

nobel基本上是你讀過的數據。

首先,你必須知道這個json的結構:這個json是一個帶有鍵“prizes”的Object,然后鍵“prizes”是一個數組,所以如果你想得到你想要的內容,你必須得到這個數組從“獎品”鍵

whatYouWillGet = [item for item in nobel]
print(whatYouWillGet)
// it will print ["prizes"]

暫無
暫無

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

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