【发布时间】:2019-09-17 07:37:21
【问题描述】:
这行得通:
def delete_empty_keys(d):
new_d = {}
for key,value in d.items():
if key != '' and not isinstance(value, dict):
new_d[key] = value
elif key != '' and isinstance(value, dict):
new_d[key] = delete_empty_keys(value)
else:
pass
return new_d
如何把它变成一个 dict 理解?我已经尝试过了,但我无法让它工作,最后我应该有一个else pass。
def delete_empty_keys(d):
return {key: value
if key != '' and not isinstance(value, dict)
else delete_empty_keys(value)
if key != '' and isinstance(value, dict)
#else pass??
for key, value in d.items()
}
【问题讨论】:
-
请提供示例输入和预期输出
-
注意:您不是在过滤
None键,而是在过滤空字符串。
标签: python dictionary dictionary-comprehension