Advertisement
Guest User

List Beautification

a guest
Feb 9th, 2017
129
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.26 KB | None | 0 0
  1. #!/usr/bin/env python
  2.  
  3. def beautify(li):
  4.  
  5.     final_list = []
  6.     address = []  # declaration for holding address
  7.     account = []  # declaration for holding account
  8.  
  9.     keys = []
  10.  
  11.     for dict_row in li:
  12.         for key in dict_row.get('id'):
  13.             keys.append(key)
  14.  
  15.     # Defining unique keys....
  16.     unique_keys = set(keys)
  17.  
  18.     # Reverse back to list for indexing
  19.     key_list = list(unique_keys)
  20.  
  21.     index = 0
  22.     # index2 = 0
  23.  
  24.     for row in li:
  25.         try:
  26.             if key_list[index] == row['id']:
  27.                 address.append({'add1': row['add1'], 'add2': row['add2']})
  28.                 account.append({'account1': row['account1'], 'account2': row['account2']})
  29.                 final_list.append({'id': row['id'], 'name': row['name']})
  30.  
  31.                 final_list[index]['address'] = address
  32.                 final_list[index]['account'] = account
  33.  
  34.                 index += 1
  35.         except IndexError:
  36.             break
  37.  
  38.     print(final_list)
  39.    
  40.  
  41. if __name__ == '__main__':
  42.     li = [{"id":"1", "name":"somename1", "add1":"abc", "add2":"def", "account1":"223", "account2":"231"}, {"id":"2", "name":"somename2", "add1":"jkl", "add2":"efg", "account1":"678", "account2":"345"}, {"id":"1", "name":"somename1", "add1":"pqr", "add2":"stu", "account1":"123", "account2":"456"}, {"id":"2", "name":"somename2", "add1":"mno", "add2":"wxy", "account1":"456", "account2":"789"} ]
  43.     beautify(li)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement