책상에 내 머리를 쾅쾅! json에서 다운로드 한 URL이 있고 parsed_json = json.loads (response_body)에서 파이썬 사전에 있습니다. 문제는 필요한 데이터 (사전에 포함 된 목록이 목록에 있음)가 목록이라는 사전에 있다는 것입니다. 내가 딕셔너리 카운트 나 키 등을하면 실제로 37 개의 딕셔너리가있을 때 첫 번째 레벨 3을 얻습니다.
for key, value in parsed_json.iteritems() :
print key, value
일주일 후 목록의 dicts에서 모든 값을 얻는 방법을 알아낼 수 없습니다. 이와 같은 것을 사용하여 얻을 수는 있지만 개수를 늘릴 수는 없습니다.
print parsed_json['list'][(1)]['value']
결과는 MV가 C 도가 아니기 때문에 값을 얻은 후 일부 수학을 수행해야하는 digi xbee 클라우드 가져 오기입니다. 가치를 얻는 방향은 대단히 감사합니다.
데이터 스 니펫 :
{u'count': 37,
u'list': [{u'history_uri': u'/ws/v1/streams/history/00000000-00000000-00409DFF-FF818A13/management/connections',
u'id': u'00000000-00000000-00409DFF-FF818A13/management/connections',
u'server_timestamp': u'2015-11-21T04:21:45.407Z',
u'timestamp': u'2015-11-21T04:21:45.269Z',
u'type': u'JSON',
u'value': u'{"connectTime":"2015-11-21T04:21:45.269Z","type":"Ethernet","remoteIp":"72.38.16.255","localIp":"192.168.2.106","session":"17c6e5d2-3d9d-439b-aa8a-36f050bf8b9c"}'},
{u'history_uri': u'/ws/v1/streams/history/00000000-00000000-00409DFF-FF818A13/xbee.analog/[00:13:A2:00:40:D5:8F:0A]!/AD1',
u'id': u'00000000-00000000-00409DFF-FF818A13/xbee.analog/[00:13:A2:00:40:D5:8F:0A]!/AD1',
u'server_timestamp': u'2015-11-22T08:14:15.945Z',
u'timestamp': u'2015-11-22T08:14:09.101Z',
u'type': u'INTEGER',
u'value': u'1'},
{u'history_uri': u'/ws/v1/streams/history/00000000-00000000-00409DFF-FF818A13/xbee.analog/[00:13:A2:00:40:D5:8F:0A]!/AD2',
u'id': u'00000000-00000000-00409DFF-FF818A13/xbee.analog/[00:13:A2:00:40:D5:8F:0A]!/AD2',
u'server_timestamp': u'2015-11-22T08:14:15.964Z',
u'timestamp': u'2015-11-22T08:14:09.377Z',
u'type': u'INTEGER',
u'value': u'613'},
{u'history_uri': u'/ws/v1/streams/history/00000000-00000000-00409DFF-FF818A13/xbee.analog/[00:13:A2:00:40:D5:8F:0A]!/AD3',
u'id': u'00000000-00000000-00409DFF-FF818A13/xbee.analog/[00:13:A2:00:40:D5:8F:0A]!/AD3',
u'server_timestamp': u'2015-11-22T08:14:15.930Z',
u'timestamp': u'2015-11-22T08:14:08.854Z',
u'type': u'INTEGER',
u'value': u'852'},
{u'history_uri': u'/ws/v1/streams/history/00000000-00000000-00409DFF-FF818A13/xbee.analog/[00:13:A2:00:40:D5:8F:50]!/AD1',
u'id': u'00000000-00000000-00409DFF-FF818A13/xbee.analog/[00:13:A2:00:40:D5:8F:50]!/AD1',
u'server_timestamp': u'2015-11-22T08:14:15.834Z',
u'timestamp': u'2015-11-22T08:14:07.477Z',
u'type': u'INTEGER',
u'value': u'0'},
{u'history_uri': u'/ws/v1/streams/history/00000000-00000000-00409DFF-FF818A13/xbee.analog/[00:13:A2:00:40:D5:8F:50]!/AD2',
이것은 작동합니다.
for index in range(parsed_json['count']):
print(parsed_json['list'][index]['value'])
또는 더 간단합니다.
for item in parsed_json['list']:
print(item['value'])
반복하여 모든 키-값 쌍을 인쇄 할 수 있습니다. items()
for entry in parsed_json['list']:
for key, value in entry.items():
print(key)
print(' ', value)
Python 2에서는 은 Python 3의 함수이지만 여전히 Python 2의 문 print ' ', value
이므로 작성 print
합니다. Python을 처음 사용하는 경우 Python 3으로 시작합니다. Python 2는 레거시 Python입니다.
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다