Проверить, появляется ли определенный элемент дважды в списке - Python - PullRequest
0 голосов
/ 07 мая 2020

Без импорта другой функции проверьте, содержит ли список два одинаковых элемента

FE list = [3,4,5,3], поскольку 3 появляется дважды в списке return True

Спасибо за помощь

Ответы [ 3 ]

2 голосов
/ 07 мая 2020

Если вам нужно проверить, встречается ли элемент ровно дважды, вы можете сделать это:

l = [3,4,5,3]
if 2 in set([l.count(n) for n in l]):
    print('True')
2 голосов
/ 07 мая 2020

Вы можете преобразовать в set и проверить полученную длину:

len(set(data)) < len(data)
0 голосов
/ 07 мая 2020

Существуют разные подходы к решению этой проблемы.

Решение 1. Используйте set ()

if len(set(<your_list>))<len(<your_list>):
    return False
else:
    return True

Решение 2. Используйте ha sh dictionary

def check_list(lst):
   hash_dict={}
   for elem in lst:
     if elem not in hash_dict:
        hash_dict[elem]=1
     else:
        return True
    return False

В приведенном выше решении мы добавляем элементы в ha sh dict и постоянно проверяем, существует ли он там, если это так, мы возвращаем True. Если в списке нет дубликатов или более 2 элементов, он просто вернет false.

Решение 3. Мы также можем использовать счетчик из коллекций

from collections import Counter
new_dict=Counter(<your list>)
return True if 2 in new_dict.values() else False
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...