Guest User

Untitled

a guest
Apr 23rd, 2018
82
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.34 KB | None | 0 0
  1. import json
  2.  
  3. data=r'C:UsersKaleabDesktopGISN24Python ProgrammingPython_Real_World_Exercisesunicode_json.json'
  4. def js_r(data):
  5. with open(data, encoding='utf-8') as f_in:
  6. return(json.load(f_in))
  7.  
  8.  
  9. my_dic_data = js_r(data)
  10. def get_recursively(search_dict=my_dic_data,is_answered='True',field='link'):
  11. '''Takes a dict with nested lists and dicts,and searches all dicts for a key of the field provided'''
  12. fields_found=[]
  13. for key, value in search_dict.items():
  14.  
  15. if key == field:
  16. fields_found.append(value)
  17. elif isinstance(value,dict):
  18. results=get_recursively(value,field)
  19. for result in results:
  20. fields_found.append(result)
  21. elif isinstance(value,list):
  22. for item in value:
  23. if isinstance(item,dict):
  24. more_results=get_recursively(item,field)
  25. for another_result in more_results:
  26. fields_found.append(another_result)
  27. return fields_found
  28. if __name__ == "__main__":
  29. my_dic_data = js_r(data)
  30. print("This is my dictionary", my_dic_data)
  31. my_search_field=get_recursively()
  32. print("Searching field='link' yielded",my_search_field)
  33. final=[print(x) for x in my_search_field if 'questions' in my_search_field]
  34. print (final)
Add Comment
Please, Sign In to add comment