聚合Python字典的布尔值的最佳方法是什么?

时间:2010-05-10 21:34:40

标签: python

对于以下Python字典:

dict = {
    'stackoverflow': True,
    'superuser': False,
    'serverfault': False,
    'meta': True,
}

我想将上面的布尔值聚合到以下布尔表达式中:

dict['stackoverflow'] and dict['superuser'] and dict['serverfault'] and dict['meta']

以上内容应该归还False。我正在使用上面已知名称的密钥,但我希望它可以工作,以便可以有大量未知的密钥名称。

1 个答案:

答案 0 :(得分:23)

在python 2.5 +中:

all(dict.itervalues())

在python 3 +

all(dict.values())

dict是一个错误的变量名称,因为它是内置类型的名称

编辑:添加python 3版本的语法。 values()在python 3中构造一个视图,与2.x不同,它在内存中构建列表。