找到两个数组中相同位置的1的数量

7 python list

我有两个清单:

A = [0,0,0,1,0,1]
B = [0,0,1,1,1,1]
Run Code Online (Sandbox Code Playgroud)

我想在两个列表中找到相同位置的1的数量.

这些数组的答案是2.

Dra*_*sha 19

有点短,希望更pythonic方式:

>>> A=[0,0,0,1,0,1]
>>> B=[0,0,1,1,1,1]

x = sum(1 for a,b in zip(A,B) if (a==b==1))
>>> x
2
Run Code Online (Sandbox Code Playgroud)

  • 很好的答案.因为python允许你链接比较运算符,你可以使用if(a == b == 1). (6认同)

Ber*_*nDK 1

我不是 Python 专家,但是从第一个数组的开始到结束的简单循环有什么问题吗?

在 C# 中我会做类似的事情:

int match=0;

for (int cnt=0; cnt< A.Count;cnt++)
{
    if ((A[cnt]==B[cnt]==1)) match++;
}
Run Code Online (Sandbox Code Playgroud)

这在你的语言中可能吗?