Advertisement
Guest User

Untitled

a guest
Jul 21st, 2019
83
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.52 KB | None | 0 0
  1. data = [
  2. {
  3. 'id': '1',
  4. 'parent': '',
  5. 'children': [
  6. {
  7. 'id': '2',
  8. 'parent': '1',
  9. 'children': [
  10. {
  11. 'id': '8',
  12. 'parent': '2',
  13. 'children': [
  14. {
  15. 'id': '9',
  16. 'parent': '8'
  17. }
  18. ]
  19. }
  20. ]
  21. },
  22. {
  23. 'id': '3',
  24. 'parent': '1'
  25. }
  26. ]
  27. },
  28. {
  29. 'id': '4',
  30. 'parent': '',
  31. 'children': [
  32. {
  33. 'id': '5',
  34. 'parent': '4'
  35. },
  36. {
  37. 'id': '6',
  38. 'parent': '4'
  39. },
  40. {
  41. 'id': '7',
  42. 'parent': '4'
  43. }
  44. ]
  45. }
  46. ]
  47.  
  48.  
  49. def nested2flat(nested: list) -> list:
  50. res = []
  51. for child in nested:
  52. children = child.pop('children', [])
  53. res.append(child)
  54. res.extend(nested2flat(children))
  55. return res
  56.  
  57.  
  58. if __name__ == '__main__':
  59. print(nested2flat(data))
  60.  
  61. """
  62. result = [
  63. {'id': '1', 'parent': ''},
  64. {'id': '2', 'parent': '1'},
  65. {'id': '8', 'parent': '2'},
  66. {'id': '9', 'parent': '8'},
  67. {'id': '3', 'parent': '1'},
  68. {'id': '4', 'parent': ''},
  69. {'id': '5', 'parent': '4'},
  70. {'id': '6', 'parent': '4'},
  71. {'id': '7', 'parent': '4'}
  72. ]
  73. """
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement