Python 如何从集合列表中找到最大集合或超集(最大集合是不是列表中另一集合的子集的集合)

Python 如何从集合列表中找到最大集合或超集(最大集合是不是列表中另一集合的子集的集合),python,python-2.7,python-3.x,numpy,set,Python,Python 2.7,Python 3.x,Numpy,Set,这是关于根据密度标准在图中查找稠密社区,下面的所有集合都是图的稠密社区 list L=[set([1]), set([2]), set([3]), set([4]), set([5]), set([6]), set([7]), set([8]), set([1, 2]), set([1, 3]), set([1, 4]), set([3, 4]), set([1, 3, 4]), set([1, 5]), set([2, 5]), set([4, 5]), set([1, 2, 5]), set

这是关于根据密度标准在图中查找稠密社区,下面的所有集合都是图的稠密社区

list L=[set([1]), set([2]), set([3]), set([4]), set([5]), set([6]), set([7]), set([8]), set([1, 2]), set([1, 3]), set([1, 4]), set([3, 4]), set([1, 3, 4]), set([1, 5]), set([2, 5]), set([4, 5]), set([1, 2, 5]), set([1, 4, 5]), set([2, 6]), set([4, 7]), set([8, 5]), set([8, 7])]

我需要得到这个列表的最大集,即。在列表中,集合[1,4,5]是集合[1]、集合[4]、集合[5]、集合[1,5]、集合[1,4]和集合[4,5]的最大集合,所以我只需要打印集合[1,4,5]类似的集合[1],集合[3]。集合[4]、集合[1,3]、集合[1,4],集合[3,4]有一个最大集合[1,3,4],所以我只需要打印集合[1,3,4],正如集合[1,2,5]所示是一个极大集,所有不是较大集子集的集都被视为极大集,因此我只需要得到不是较大集子集的极大集

您以前没有问过这个问题吗?请不要重复同样的问题。谢谢。。。你就是那个人。@user2014111我很高兴。我无法接受。@user2014111很好。只是问问
L=[set([1]), set([2]), set([3]), set([4]), set([5]), set([6]), set([7]), set([8]), set([1, 2]), set([1, 3]), set([1, 4]), set([3, 4]), set([1, 3, 4]), set([1, 5]), set([2, 5]), set([4, 5]), set([1, 2, 5]), set([1, 4, 5]), set([2, 6]), set([4, 7]), set([8, 5]), set([8, 7])]


#this grouping the list by there length ...
values = set(map(lambda x:len(x), L))
newlist = {x:[y for y in L if len(y)==x] for x in values}
maxlen=max(values)

#checking for the subset.if no subset.it is returned

for i in values:
    print [ key for key in newlist[i] if not any([ val.intersection(key)==key for j in values if j !=i for val in newlist[j] ])]


#output =[set([2, 6]), set([4, 7]), set([8, 5]), set([8, 7])] [set([1, 3, 4]), set([1, 2, 5]), set([1, 4, 5])]