如何检查两个列表在相同位置是否具有相同元素

时间:2019-11-01 16:01:22

标签: python list

我想检查两个列表在同一位置是否具有相同的字母,如果是,那么将“得分”变量增加1。例如:

list1 = [a, b, f, d]
list2 = [a, b, c, d]

所以这里的分数应该是3,因为list1和list2都只匹配a,b和d(索引0、1和3)

4 个答案:

答案 0 :(得分:1)

l1=['a','b','c','d','e']
l2=['a','c','b','d','e']
k=[True for i in l1 if l1.index(i)==l2.index(i)]
cnt = len(k)
print("Count of letters having same index in both the lists is " ,cnt)

答案 1 :(得分:0)

您可以使用列表索引遍历两个列表:

for i in range(len(list1):
    if list1[i] == list2[i]:
        score += 1

答案 2 :(得分:0)

使用ordcount

print([ord(list1[i]) - ord(list2[i]) for i in range(len(list1))].count(0))

ord count

答案 3 :(得分:0)

使用生成器表达式简单地压缩和求和:

sum(first == second for (first, second) in zip(list1, list2)) 
相关问题