Сравнивание списков в 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))