flatten_dict_lists(): Don't flatten lists with duplicate keys
If we have a list of dicts, and we flatten that into a dict: Only do that if there are no dicts with duplocate key values in the list, as otherwise we will loose information during the transformation. Change-Id: I7f6d03bf323a153f3172853a3ef171cbec8aece7 Closes: OS#6288
This commit is contained in:
@@ -435,8 +435,12 @@ def flatten_dict_lists(inp):
|
||||
return False
|
||||
return True
|
||||
|
||||
def are_elements_unique(lod):
|
||||
set_of_keys = set([list(x.keys())[0] for x in lod])
|
||||
return len(lod) == len(set_of_keys)
|
||||
|
||||
if isinstance(inp, list):
|
||||
if are_all_elements_dict(inp):
|
||||
if are_all_elements_dict(inp) and are_elements_unique(inp):
|
||||
# flatten into one shared dict
|
||||
newdict = {}
|
||||
for e in inp:
|
||||
|
||||
Reference in New Issue
Block a user