from collections import Counter
from itertools import chain
mylist = [[1, 2, 3, 4], [2, 5, 6, 7, 7], [4, 2, 8, 9]]
counts = Counter(chain(*map(set, mylist)))
[[i for i in sublist if counts[i] == 1] for sublist in mylist]
Самый чистый способ удалить общие элементы списка из нескольких списков в python