Elegant way to remove fields from nested dictionaries

后端 未结 9 1845
傲寒
傲寒 2020-12-05 03:04

I had to remove some fields from a dictionary, the keys for those fields are on a list. So I wrote this function:

def delete_keys_from_dict(dict_del, lst_key         


        
9条回答
  •  不知归路
    2020-12-05 03:23

    I think the following is more elegant:

    def delete_keys_from_dict(dict_del, lst_keys):
        if not isinstance(dict_del, dict):
            return dict_del
        return {key:value for key,value in ((key, delete_keys_from_dict(value)) for key,value in dict_del.items()) if key not in lst_keys}
    

提交回复
热议问题