标签:null 删除 res list 空值 dict isinstance data 字典
# info = { # "name": "abc", # "age": "", # "info": { # "height": [1, 0, {'a': 123, 'b': 0, 'c': [], 'd': [1]}], # "weight": " ", # "gender": "man", # "addr": " ", # "tel": 123456789 # }, # "hobby": [ # 123, # 0, # False, # "abx", # True, # { # "basketball": True, # "football": False # }, # [ # 123, # 0, # False, # "abx", # True, # { # "basketball": True, # "football": False # } # ] # ] # } # # # def del_null_list(data): # res = [] # for item in data: # if isinstance(item, str) or isinstance(item, int) or isinstance(item, bool): # if item: # res.append(item) # elif isinstance(item, dict): # dict_res = del_null_dict(item) # if dict_res: # res.append(dict_res) # elif isinstance(item, list): # list_res = del_null_list(item) # if list_res: # res.append(list_res) # return res # # # def del_null_dict(data): # res = {} # for k in data: # if isinstance(data[k], str): # data[k] = data[k].strip() # if data[k]: # res[k] = data[k] # elif isinstance(data[k], int) or isinstance(data[k], bool): # if data[k]: # res[k] = data[k] # elif isinstance(data[k], dict): # ret = del_null_dict(data[k]) # if ret: # res[k] = ret # elif isinstance(data[k], list): # list_res = del_null_list(data[k]) # if list_res: # res[k] = list_res # return res # # # def del_null(data): # res = {} # for k in data: # if isinstance(data[k], str): # data[k] = data[k].strip() # if data[k]: # res[k] = data[k] # elif isinstance(data[k], int) or isinstance(data[k], bool): # if data[k]: # res[k] = data[k] # elif isinstance(data[k], dict): # dict_res = del_null_dict(data[k]) # if dict_res: # res[k] = dict_res # elif isinstance(data[k], list): # list_res = del_null_list(data[k]) # if list_res: # res[k] = list_res # return res # # # r = del_null(info) # print(r) info = { "name": "abc", "age": "", "info": { "height": [1, 0, {'a': 123, 'b': 0, 'c': [], 'd': [1]}], "weight": " ", "gender": "man", "addr": " ", "tel": 123456789 }, "hobby": [ 123, 0, False, "abx", True, { "basketball": True, "football": False }, [ 123, 0, False, "abx", True, { "basketball": True, "football": False } ] ] } def del_null_list(data): res = [] for item in data: if isinstance(item, str) or isinstance(item, int) or isinstance(item, bool): if item: res.append(item) elif isinstance(item, dict): dict_res = del_null_dict(item) if dict_res: res.append(dict_res) elif isinstance(item, list): list_res = del_null_list(item) if list_res: res.append(list_res) return res def del_null_dict(data): res = {} for k in data: if isinstance(data[k], str): data[k] = data[k].strip() if data[k]: res[k] = data[k] elif isinstance(data[k], int) or isinstance(data[k], bool): if data[k]: res[k] = data[k] elif isinstance(data[k], dict): ret = del_null_dict(data[k]) if ret: res[k] = ret elif isinstance(data[k], list): list_res = del_null_list(data[k]) if list_res: res[k] = list_res return res def del_null(data): res = {} for k in data: if isinstance(data[k], str): data[k] = data[k].strip() if data[k]: res[k] = data[k] elif isinstance(data[k], int) or isinstance(data[k], bool): if data[k]: res[k] = data[k] elif isinstance(data[k], dict): dict_res = del_null_dict(data[k]) if dict_res: res[k] = dict_res elif isinstance(data[k], list): list_res = del_null_list(data[k]) if list_res: res[k] = list_res return res r = del_null(info) print(r)
标签:null,删除,res,list,空值,dict,isinstance,data,字典 来源: https://www.cnblogs.com/chweb/p/11311390.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。