設設置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你檢查了下面的答案嗎? –