How I can get the number of elements in node of JSON data?
JSON:
{ "result":[ { "run":[ { "action":"stop" }, { "action":"start" }, { "action":"start" } ], "find":true } ] }
I need to get the number of elements from node data['result'][0]['run']
. It should be 3, but I can't find how to do it in Python.
No, it isn't possible to do math or any kind of expression in JSON as JSON is just a data structure format, and not a programming language.
You need to convert the string of a json object to python dict before you can access it. Show activity on this post. Usually the json will be a string and you will try and deserialise it into a object graph (which in python are typically are made up of maps and arrays).
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'])
Convert it in dict.
You're close. A really simple solution is just to get the length from the 'run' objects returned. No need to bother with 'load' or 'loads':
len(data['result'][0]['run'])
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With