删除内嵌的空迭代对象 / Recursively delete the embedded null iteration object
1 # -*- coding:utf-8 -*- 2 # _author_:** 3 # data:2019/11/29 4 """ 5 删除 字典/列表 及内嵌的 字典/列表 里的 空字典/value为空的字典键/列表; 6 只清空,无返回; 7 如果内嵌的字典values全为空,清空后会剩下空字典,需要再次调用函数。 8 """ 9 def del_empty(capacity): 10 if isinstance(capacity, list): 11 for item in list(capacity): 12 if not item: 13 capacity.pop(capacity.index(item)) 14 del_empty(item) 15 elif isinstance(capacity, dict): 16 for k, v in list(capacity.items()): 17 if not v: 18 del capacity[k] 19 del_empty(v) 20 else: 21 return capacity
萌新,大佬们多指教.