Python 检查是否所有字典都包含具有特定值的特定键

Python 检查是否所有字典都包含具有特定值的特定键,python,dictionary,Python,Dictionary,我需要深入查看0,1,2的['labels\u detected\u summary'],以确定它们的['is\u mode\u一致]键是否都是真的 我知道all()函数将有助于检查最后的值,但我是否应该使用键、val方法或某种方法来访问这些单独的字典。get或iteritems() 编辑:看,这是我现在的SO问题。我知道我没有“发布我的代码”,但我也知道,人们会从黑客的不同方面得到乐趣,我会学到一些东西。我不会考虑使用键访问迭代器。这是一个值得否决的好帖子 视情况而定,如果您确定所有钥匙都会出

我需要深入查看
0,1,2
['labels\u detected\u summary']
,以确定它们的
['is\u mode\u一致]
键是否都是真的

我知道
all()
函数将有助于检查最后的值,但我是否应该使用
键、val
方法或某种
方法来访问这些单独的字典。get
iteritems()


编辑:看,这是我现在的SO问题。我知道我没有“发布我的代码”,但我也知道,人们会从黑客的不同方面得到乐趣,我会学到一些东西。我不会考虑使用键访问迭代器。这是一个值得否决的好帖子

视情况而定,如果您确定所有钥匙都会出现,您可以执行以下操作:

全部(
数据['payload']中x的x['labels\u detected\u summary']['is\u mode\u Conferenced']值()
)
如果数据可能不完整,您可以使用
.get(key,default)
,这样当它找不到它时就不会引发
KeyError

全部(
x、 get('labels_detected_summary',{}).get('is_mode_consential',False)用于数据中的x.get('payload',{}).values()
)

但是我应该使用key、val方法或某种.get或iteritems()循环来访问这些单独的字典吗?@AMC是的,只是在谷歌上搜索一下使用内置字典方法的正确方法
all
函数本身通常与生成器表达式一起使用,后者进行迭代;该表达式的第一部分只需要检查当前词典是否在正确的位置有“True”。您可以使用正则方括号表示法-
d['labels\u detected\u summary']['is\u mode\u consential']
起作用,其中
d
是您的迭代变量。@HashRocketSyntax您可以忽略
==True
。如果您曾经必须测试这样的东西是否为真,那么应该使用
is True
,而不是
==
==True
对于布尔值来说是多余的,但是您需要将其作为生成器表达式-
。。。例如,对于payload.values()中的d。我建议寻找有关
all()
函数的教程或参考资料。
    "payload": {
            "0": {
                "labels_detected_summary": {"comm_mode": str, "is_mode_unanimous": bool, "is_mode_match_pred": bool},
                "labels_detected": {
                    ...
                }
            },
            "1": {
                "labels_detected_summary": {"comm_mode": str, "is_mode_unanimous": bool, "is_mode_match_pred": bool},
                "labels_detected": {
                    ...
                }
            },
            "2": {
                "labels_detected_summary": {"comm_mode": str, "is_mode_unanimous": bool, "is_mode_match_pred": bool},
                "labels_detected": {
                    ...
                }
            }
        }
    }