Проверьте, присутствует ли дублированный список из нескольких списков - PullRequest
0 голосов
/ 10 октября 2018

У меня есть следующие списки: мне нужно проверить, есть ли у нас дубликаты, которые мы предполагаем (['f', 't'] = ['t', 'f']) (порядок элементов в списке не имеет значения) и, следовательно, это должно вернуть «дубликаты», так как у него есть оба списка

['f', 't']
['f', 'r']
['t', 'f']
['f', 'u']
['b', 't']
['b', 'r']
['b', 'l']
['b', 'u']
['r', 't']
['r', 'u']
['l', 't']
['l', 'u']

, и я попытался запустить итерацию, чтобы проверить, есть ли какие-либо дубликаты списков, но это не удается, так как каждый элемент сравнивается с самим собой витерация один раз.Любое приводит к тому же будет оценено

1 Ответ

0 голосов
/ 10 октября 2018

Попробуйте это:

duplicate_list = [['f', 't'],
['f', 'r'],
['t', 'f'],
['f', 'u'],
['b', 't'],
['b', 'r'],
['b', 'l'],
['b', 'u'],
['r', 't'],
['r', 'u'],
['l', 't'],
['l', 'u']]

seen = set()
for el in duplicate_list:
    el = frozenset(el)
    if el in seen:
        print("Duplicate")
        break
    seen.add(el)
...