如何使用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. docker安裝后出現Cannot connect to the Docker daemon.2. 為什么我ping不通我的docker容器呢???3. android - webview 自定義加載進度條4. mysql - 怎么讓 SELECT 1+null 等于 15. javascript - 微信音樂分享6. 網頁爬蟲 - 用Python3的requests庫模擬登陸Bilibili總是提示驗證碼錯誤怎么辦?7. javascript - 微信小程序封裝定位問題(封裝異步并可能多次請求)8. 并發模型 - python將進程池放在裝飾器里為什么不生效也沒報錯9. linux - openSUSE 上,如何使用 QQ?10. python 怎樣用pickle保存類的實例?
