繁体   English   中英

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

[英]What's the best way to aggregate the boolean values of a Python dictionary?

对于以下Python字典:

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

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

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

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

在python 2.5+中:

all(dict.itervalues())

在python 3+中

all(dict.values())

但是, dict是一个糟糕的变量名,因为它是内置类型的名称

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM