lst1 = []
lst2 = []
d = {}
defconvert_format(data):
for dic in data:
ifnot dic.get("parent_ind"):
d[dic["name"]] = {}
else:
lst1.append(dic)
for dic in lst1:
if dic['parent_ind'] in d:
d[dic.get('parent_ind')][dic['name']] = {}
else:
lst2.append(dic)
for dic in lst2:
for t in d.values():
if dic['parent_ind'] in t:
t[dic['parent_ind']][dic['name']] = {}
return d
print(convert_format(industry_list))
2. 递归简单实现
dirs = {"C":"NULL",
"D":{"D1":"NULL",
"D2":{"D2_1":"NULL"}},
"E":{"E1":{"E1_1":{"E1_1_1":"NULL"},
"E1_2":"NULL"},
"E2":"NULL"}
}
defdirnames(dirs):
"""
这个函数用于将上述定义的 dirs 中的每一个 key 和子元素中的 key
取出并打印出来如:依次输出 C、D、D1、D2_1、D…… 请补全代码。
"""# 第一种方法# for key,values in dirs.items():# print(key)# if type(values) == dict:# dirnames(values)# 第二种方法for k, v in dirs.items():
print(k)
# isinstance(a,b) 判断a类是否是b类的子类或继承b类# issubclass(a,b) 判断a是否是b类或b类的子类的实例对象ifisinstance(v, dict):
dirnames(v)
dirnames(dirs)
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步