[英]Retrieving items from a dictionary data type created from a JSON request
我已經嘗試了各種方法來遍歷此代碼返回的JSON中的成員項:
import requests,string,simplejson as json
from pprint import pprint
data=requests.get('http://localhost:8090/api/v1/members/2321')
data = json.loads(data.text)
pprint(data)
此pprint的結果是:
{u'members': [[{u'member_amt_pledged': u'10.00',
u'member_amt_recvd': None,
u'member_id': u'1',
u'name': u'Murray Hight'},
{u'member_amt_pledged': u'10.00',
u'member_amt_recvd': None,
u'member_id': u'4',
u'name': u'Martin Tunis'}]],
u'error': False}
如何遍歷此數據成員數據並評估和打印每一行?
代碼中的data
是python 字典 。 一個鍵值對。
您可以使用variable[key]
格式訪問詞典中的項目。 您的情況如下:
data['members']
此打印
[[{u'member_amt_pledged': u'10.00',
u'member_amt_recvd': None,
u'member_id': u'1',
u'name': u'Murray Hight'},
{u'member_amt_pledged': u'10.00',
u'member_amt_recvd': None,
u'member_id': u'4',
u'name': u'Martin Tunis'}]]
因此data['members']
是列表的列表。 以data['members'][0]
訪問其第一項。 這仍然是列表。 因此,您將其迭代為:
for item in data['members'][0]:
print(item)
這給你:
{u'member_amt_recvd': None, u'member_amt_pledged': u'10.00', u'name': u'Murray Hight', u'member_id': u'1'}
{u'member_amt_recvd': None, u'member_amt_pledged': u'10.00', u'name': u'Martin Tunis', u'member_id': u'4'}
如您所見,這些都是字典,因此您可以按以下方式訪問它的項目:
for item in data['members'][0]:
print(item['member_amt_pledged'])
print(item['member_amt_recvd'])
print(item['member_id'])
print(item['name'])
這給你:
10.00
None
1
Murray Hight
10.00
None
4
Martin Tunis
希望這可以幫助。
要循環JSON
字典的項目,請執行以下操作:
for key, val in data.items():
print key, val
對於更大的數據集,應使用迭代器:
for key, val in data.iteritems():
print key, val
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.