0
我想要得到一個逆功率集發電機,發電機從最大到最小返回功率集。Python的逆功率集發電機
這是一個標準的發電機組發電機(見this問題):
from itertools import chain, combinations
def powerset_generator(i):
for subset in chain.from_iterable(combinations(i, r) for r in range(len(i)+1)):
yield list(subset)
產生這樣的:
[]
[1]
[2]
[3]
[1, 2]
[1, 3]
[2, 3]
[1, 2, 3]
而且我想這個:
[1, 2, 3]
[1, 2]
[1, 3]
[2, 3]
[1]
[2]
[3]
[]
有什麼方法可以將發生器反轉,使其從後面起作用?
我們的解決方案其實沒有做什麼OP期望:d在同等大小的子集的順序顛倒過來太 –
@hege_hegedus的例子,我想/希望,可能是一個錯誤 –
的例子是錯誤的,我剛剛發佈從正常訂單生成的反向列表將改變爲未來的谷歌 – byrass