如何使用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’]))
相關文章:
1. phpStudy2017輕巧版mysql無法啟動2. javascript - 移動端一個小效果3. java類型強轉為泛型V,竟然沒有報錯?4. javascript - 學習網頁開發,關于head區域一段腳本的疑惑5. 為什么我輸入了refresh不會跳轉?請教大神支招!6. javascript - 父級設置了相對定位。子元素設置了絕對定位。子元素中包含了浮動的table,這個時候高度不能自適應。7. Mysql如何按照日期對比數據,求SQL語句8. mysql - 如何高效的查詢需要合并大數據表的操作9. node.js - npm init無法一直回車。到version就卡主不動了10. 為什么我寫的PHP不行
