如何使用python提取json中指定字段的数据?
问题描述
现在有一个json数据,如下:
{ 'favourite':{ 'bkmrk':{ 'id1490843709594066':{ 'guid':'904eff52277f403b89f6410fe2758646.11', 'lcate':'1' }, 'id1490843712805183':{ 'guid':'58457f60eca64025bc43a978f9c98345.16', 'lcate':'2' }, 'id149084371467327':{ 'guid':'a0f907f9dc8b40f689b083f3eba7228b.16', 'lcate':'3' }, 'id1490843716295393':{ 'guid':'eb75d929455e468bb712e7bc2025d11a.16', 'lcate':'4' } } }}
我该如何使用python操作该json,才能输出所有的guid和lcate有序对,即以下形式:
1;904eff52277f403b89f6410fe2758646.112;58457f60eca64025bc43a978f9c98345.163;a0f907f9dc8b40f689b083f3eba7228b.164;eb75d929455e468bb712e7bc2025d11a.16
非常感谢。
问题解答
回答1:json_dict = json.loads(json_str)for item in json_dict[’favourite’][’bkmrk’]: guid = json_dict[’favourite’][’bkmrk’][item][’guid’] lcate = json_dict[’favourite’][’bkmrk’][item][’lcate’] print ’%s:%s’ % (lcate,guid)
反正都是字典,不要想那么多
回答2:使用json包中的json.loads将该字符串转换为Python字典。 代码如下:
import jsonjson_data = '''{ 'favourite':{ 'bkmrk':{ 'id1490843709594066':{ 'guid':'904eff52277f403b89f6410fe2758646.11', 'lcate':'1' }, 'id1490843712805183':{ 'guid':'58457f60eca64025bc43a978f9c98345.16', 'lcate':'2' }, 'id149084371467327':{ 'guid':'a0f907f9dc8b40f689b083f3eba7228b.16', 'lcate':'3' }, 'id1490843716295393':{ 'guid':'eb75d929455e468bb712e7bc2025d11a.16', 'lcate':'4' } } }}'''data = json.loads(json_data)for v in data[’favourite’][’bkmrk’].values(): print('%s;%s' % (v[’lcate’], v[’guid’]))
相关文章:
