跨多个列表的逻辑与运算

Num*_*gic 2 python boolean-operations elementwise-operations

我有一本看起来像这样的字典:

d= {'GAAP':[True,True],'L1':[True,False],'L2':[True,True]}
Run Code Online (Sandbox Code Playgroud)

我想对字典中的每个值执行逻辑 AND 运算并返回True/False 值的列表。就像是:

for counter in range(0,2):
    print(d['GAAP'][counter] & d['L1'][counter] & d['L2'][counter])
Run Code Online (Sandbox Code Playgroud)

我的字典相当大,所以想避免手动输入每个键来执行逻辑 AND。

Gil*_*een 5

一种方法是使用zip获取所有相应的元素,然后询问它们是否为all真:

map(all, zip(*d.values()))
Run Code Online (Sandbox Code Playgroud)

结果它: [True, False]