如何使用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. python文檔怎么查看?2. java - 在用戶不登錄的情況下,用戶如何添加保存到購物車?3. java - spring boot 如何打包成asp.net core 那種獨立應用?4. javascript - 關于apply()與call()的問題5. datetime - Python如何獲取當前時間6. android - SwipeRefreshLayout5.0以下不兼容7. javascript - webpack 分割加載代碼后,react 界面不更新8. javascript - nginx反向代理靜態資源403錯誤?9. html - eclipse 標簽錯誤10. 安全性測試 - nodejs中如何防mySQL注入
