I wish to loop through the following json dictionary:
hgetjsonObject = {
u 'jsonrpc': u '2.0', u 'result': [{
u 'hosts': [{
u 'status': u '0',
u 'hostid': u '10394',
u 'name': u 'vsclap01l'
}, {
u 'status': u '0',
u 'hostid': u '10395',
u 'name': u 'vsclap03l'
}, {
u 'status': u '0',
u 'hostid': u '10396',
u 'name': u 'vscldb04l'
}],
u 'groupid': u '4',
u 'name': u 'Zabbix servers'
}], u 'id': 2
}
Here is what I have tried so far:
print(hgetjsonObject['result'][0]['hosts'][0])
But when I run it, it aborts with the following:
{u'status': u'0', u'hostid': u'10394', u'name': u'vsclap01l'}
Traceback (most recent call last):
File "./automaton.py", line 341, in <module>
print(hgetjsonObject['result'][0]['hosts'][0])
IndexError: list index out of range
I want to be able to do something like this:
for eachhost in hgjsonObject['result']:
print(eachhost['hostid'],eachhost['name'])
When I run the for loop, I get errors.
print(eachhost['hosts'][0]["hostid"],eachhost['hosts'][0]["name"])print(hgetjsonObject['result'][0]['hosts'][0])runs without any error. can you show us fileautomaton.py