web-dev-qa-db-fra.com

Comment compter des éléments dans des données JSON

Comment obtenir le nombre d'éléments dans le nœud de données JSON?

JSON:

{
  "result":[
    {
      "run":[
        {
          "action":"stop"
        },
        {
          "action":"start"
        },
        {
          "action":"start"
        }
      ],
      "find":true
    }
  ]
}

J'ai besoin d'obtenir le nombre d'éléments du noeud data['result'][0]['run']. Cela devrait être 3, mais je ne trouve pas comment le faire en Python.

47
mierzej
import json

json_data = json.dumps({
  "result":[
    {
      "run":[
        {
          "action":"stop"
        },
        {
          "action":"start"
        },
        {
          "action":"start"
        }
      ],
      "find": "true"
    }
  ]
})

item_dict = json.loads(json_data)
print len(item_dict['result'][0]['run'])

Convertissez-le en dict.

66
pnv

Tu es proche. Une solution très simple consiste simplement à obtenir la longueur des objets 'run' renvoyés. Pas besoin de s'embêter avec 'charge' ou 'charges':

len(data['result'][0]['run'])
1
Muad'Dib