检查空字典和空值的Python方法

拉彭

我使用的是这类字典,它们可以是空的,也可以是完全空的,collection_a或者包含一个单层的嵌套字典,可能是空的。它不会有更多的水平。

collection_a = {}
collection_b = {"test": {}}

print is_empty(collection_a)
print is_empty(collection_b)

def is_empty(collection):
    return not all(collection.values())

要么

def is_empty(collection):
    return not bool(collection.values())

是否存在一种独特的方法来检查a或b是否具有值?

您可以检查,all(collection_b.values())但对于collection_a无效,它将返回True

您还可以检查,bool(collection_a.values())但对于collection_b无效,它将返回True。

是否有一种独特的方式可以同时包含这两种情况?

摩西·科莱多耶

用测试any,因为空字典是虚假的

>>> collection_a = {}
>>> collection_b = {"test": {}}
>>> any(collection_a.values())
False
>>> any(collection_b.values())
False

这假定字典值始终是字典。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章