我有两个二进制列表的以下代码,我想获得一个结果列表,其中元素i
将是OR
应用于i
两个列表元素的操作:
from operator import ior
l_0 = [01100]
l_1 = [11000]
print map(ior, l_0, l_1)
我期待一个结果[11100]
,但结果是:
[11000]
我检查了 ior 运算符,文档说它执行操作:
a = ior(a, b) is equivalent to a |= b
所以我也尝试了以下检查:
print ior(0,0)
print ior(1,0)
print ior(0,1)
print ior(1,1)
得到结果:
0
1
1
1
这是有道理的,但与列表第三位获得的结果不一致。我不明白为什么上面的 map 操作的结果不是[11100]
。我在这里遗漏了一些东西,我希望你能对此有所了解。