input_dictionary= {'A': [{'B1': [{'C1': ['D2']}, {'C2': ['D3']}]}, {'B2': [{'C1': ['D2']}, {'C2': ['D3']}]}]}
输出:
['A','A_B1','A_B2','A_B1_C1','A_B1,C2',.....so on]
因此,通用格式是parent_child_subchild,依此类推。 任何建议/指南都将不胜感激。
答案 0 :(得分:0)
>>> def stringify(d, prefix=[]):
... try:
... for k,l in d.items():
... return ['_'.join(prefix+[k])]+[f for e in l for f in stringify(e,prefix+[k])]
... except AttributeError:
... return ['_'.join(prefix+[d])]
...
>>> stringify(input_dictionary)
['A', 'A_B1', 'A_B1_C1', 'A_B1_C1_D2', 'A_B1_C2', 'A_B1_C2_D3', 'A_B2', 'A_B2_C1', 'A_B2_C1_D2', 'A_B2_C2', 'A_B2_C2_D3']