我有一個看起來像這樣的列表:獲取從n個非零長度的所有可能組合列出
[["0"], ["1", "2"], ["4"]]
,我希望得到所有可能的排列具有非零長度以不超過該列表中的每個列表中的一個元素或者甚至僅僅是排列的數量。所以上面列表的結果是:
[["0"], ["1"], ["2"], ["4"], ["0", "1"], ["0", "2"], ["1", "4"], ["2", "4"], ["0", "4"], ["0", "1", "4"], ["0", "2", "4"]]
子列表中的元素都是字符串。
我試過使用itertools.products,但它只返回使用所有子列表的結果。
>>> import itertools
>>> l = [["0"], ["1", "2"], ["4"]]
>>> list(itertools.product(*l))
[('0', '1', '4'), ('0', '2', '4')]