python - Convert a list of dictionaries into a set of dictionaries -
how can make set of dictionaries 1 list of dictionaries?
example:
import copy v1 = {'k01': 'v01', 'k02': {'k03': 'v03', 'k04': {'k05': 'v05'}}} v2 = {'k11': 'v11', 'k12': {'k13': 'v13', 'k14': {'k15': 'v15'}}} data = [] n = 5 in range(n): data.append(copy.deepcopy(v1)) data.append(copy.deepcopy(v2)) print data
how create set of dictionaries list data
?
ns: 1 dictionary equal when structurally same. means, got exactly same keys , same values (recursively)
a cheap workaround serialize dicts, example:
import json dset = set() d1 = {'a':1, 'b':{'c':2}} d2 = {'b':{'c':2}, 'a':1} # same according definition d3 = {'x': 42} dset.add(json.dumps(d1, sort_keys=true)) dset.add(json.dumps(d2, sort_keys=true)) dset.add(json.dumps(d3, sort_keys=true)) p in dset: print json.loads(p)
in long run make sense wrap whole thing in class setofdicts
.
Comments
Post a Comment