Как удалить все элементы в списке списков, которые не являются уникальными? - PullRequest
0 голосов
/ 23 мая 2019

Я пытаюсь вычислить все уникальные подгруппы мультипликативной группы Z * _7.Вы можете найти все по группам здесь https://en.wikipedia.org/wiki/Multiplicative_group.

Я уже много пробовал.Наборы не очень помогают, так как они удаляют только дублированные списки, но сохраняют один элемент изначально не уникальных списков.Я прочитал довольно много постов здесь о stackoverflow, но ни один из них действительно не помогает.

Итак, все возможные подгруппы из 7:

[[1], [1, 5, 7, 11, 13, 17], [1, 7, 13], [1, 5, 7, 11, 13, 17], [1, 7, 13], [1, 17]]

Однако мой желаемый результат должен выглядеть следующим образом:

[[1], [1, 17]]

, поскольку [1, 7, 13] и [1, 5, 7, 11, 13, 17] не являются уникальными списками в этой подгруппе, я хочу полностью их удалить.

1 Ответ

2 голосов
/ 23 мая 2019

Ну, вы можете достичь этого с помощью следующего:

data = [[1], [1, 5, 7, 11, 13, 17], [1, 7, 13], [1, 5, 7, 11, 13, 17], [1, 7, 13], [1, 17]]

print([x for x in data if data.count(x) ==1])

Вывод:

[[1], [1, 17]]

...