python 清除json里面的空數據,包括空dict,空list,空string,None


記錄自己的面試題

param_data = {"a": {"a": [None, "", {}, {"x": None}]}, "b": 0}


def value_is_not_empty(value):
return value not in ['', None, {}, []]


def empty_json_data(data):
if isinstance(data, dict):
temp_data = dict()
for key, value in data.items():
if value_is_not_empty(value):
new_value = empty_json_data(value)
if value_is_not_empty(new_value):
temp_data[key] = new_value
return None if not temp_data else temp_data

elif isinstance(data, list):
temp_data = list()
for value in data:
if value_is_not_empty(value):
new_value = empty_json_data(value)
if value_is_not_empty(new_value):
temp_data.append(new_value)
return None if not temp_data else temp_data

elif value_is_not_empty(data):
return data


data = empty_json_data(param_data)
print(data)


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM