设设置A=set([1,2,3]) and set B=set()
现在,我需要反复生成所有可能的组合像 set([1]) set([2]) set([3]) set([1,2]) set([1,3]) set([2,3]) set([1,2,3])
我知道公然我可以使用itertools的powergenerator配方,但伪代码在下面的表格进一步条件检查(子集条件和密度条件)我怎么能反复生成元素,以所有可能的组合成套
a=set()
b=set([1,2,3])
for i in b-a:
a=a|set([i])
for j in a:
print a-set([j])
if den(a-set[j])>=0.6:#check density criteria
# check if a-set([j]) is subset of a on ordering criteria
的上面即打印语句,打印集([J])已给定的输出,如下
set([])
set([2])
set([1])
set([2, 3])
set([1, 3])
set([1, 2])
但我需要有输出以下格式
set([1])
set([2])
set([3])
set([2, 3])
set([1, 3])
set([1, 2])
set([1,2,3])
为什么不使用itertools的powerset配方并过滤掉你不想要的结果? – user2357112
@ user2014111你检查了下面的答案吗? –