将需要删除的多层key拼接成字符串,借助exec进行执行
#例:要删除source_data['identity']['creator_name']
source_data = {
"identity":{
"creator_name":"作者1、作者2",
"create_timestamp":1655795519854,
"item_id":"13666254776490042204",
"platform":0,
"publish_target":[
1,
2
]
}
}
need_del = "source_data"
# 拼接source_data节点后的字段结构,string类型
tmp = "['identity']['creator_name']"
need_del += tmp
print(type(need_del)) # 执行结果:<class 'str'>
print(need_del) # 执行结果:source_data['identity']['creator_name']
# 执行删除操作
exec("del " + need_del)
print(source_data) # 执行结果:source_data['identity']['creator_name']被删除