首页 > 解决方案 > 比较python中两个列表的元素

问题描述

所以我需要比较python中2个列表的元素,如果它们有超过15个共同元素,它应该显示一条消息。我尝试使用for循环遍历这些列表,并比较该列表中的每个元素,并且如果它们相等,我做了一个计数器来计算我的正确答案,如果它们超过 15 则显示消息“你通过了”。但它根本不起作用,它总是说我无论如何都通过了 这是代码:

for j in answerList:
    for k in answers:
        if(k==j):
            nr+=1
if(nr>15):
    print("You passed")
else:
    print("You failed")

标签: pythonpython-3.xlist

解决方案


因为 for answerList, theanswer被重新迭代,所以你应该使用zip()

for j,k in zip(answerList,answers):
    if(k==j):
        nr+=1
if(nr>15):
    print("You passed")
else:
    print("You failed")

或者 nr=sum(k==j for j,k in zip(answerList,answers))


推荐阅读