Сравнивание списков в Pythom

У меня есть код:

def compare_lists(lst, lst2):
    itms = 0
    for i, j in zip(lst, lst2):
        if i == j:
            itms += 1
    return itms

и он сравнивает списки, выводя количество элементов которые в них совпадают. Можно использовать что-то по типу lst.compare(lst2) вмество этой функции?


Ответы (3 шт):

Автор решения: MrAbsurd

Или вы хотите вызывать функцию так lst1.compare(lst2), а не так compare(lst1, lst2) тогда вам нужно создать класс для lst по тому что в данном примере вы продемонстрировали вызов метода класса

→ Ссылка
Автор решения: Алексей Р

Используйте пересечение множеств

lst1 =[1,2,3,4,5]
lst2 =[2,3,4,5,6]
print(len(set(lst1).intersection(lst2)))
4
→ Ссылка
Автор решения: CrazyElf

Наверное, один из самых коротких вариантов будет такой:

def compare_lists(lst, lst2):
    return sum(a == b for a, b in zip(lst, lst2))
→ Ссылка