您好,我已經看過扔論壇,但沒有找到解決我的問題。 問題是: 我怎麼能找到所有可能的子集[是長度l]的S大小的列表。 並將其返回到列表中。S的長度列表中的[長度爲l]的子集
0
A
回答
1
In [162]: x=[1,2,3]
...: from itertools import combinations
...: print [subset for i in range(len(x)+1) for subset in combinations(x, i)]
#outputs: [(), (1,), (2,), (3,), (1, 2), (1, 3), (2, 3), (1, 2, 3)]
做到這一點而不組合:
In [237]: import numpy as np
...: x=np.array([1,2,3])
...: n=2**len(x)
...: res=[]
...: for i in range(0, n):
...: mask='{0:b}'.format(i).zfill(len(x))
...: mask=np.array([int(idx) for idx in mask], bool)
...: res.append(x[mask].tolist())
...: print res
#output: [[], [3], [2], [2, 3], [1], [1, 3], [1, 2], [1, 2, 3]]
+0
謝謝!但是沒有組合就有另外一種方法可以做到這一點? – guffi8
+0
@ user3202912,答案已更新 – zhangxaochen
相關問題
- 1. Python:最長的子列表的長度?
- 2. 如何將長度拆分爲子長度的組合(帶有特殊允許的子長度的列表)
- 3. 長度有序的子集?
- 4. 最長的子序列的長度
- 5. 整數列表中最長的子序列的長度
- 6. 聯合長度Y的n個列表爲長度爲n
- 7. R表子集的長度條件
- 8. 獲取k-1的長度ķ陣列的長度子集陣列
- 9. 序言:長度爲k的子集
- 10. Python中列表的長度?
- 11. Prolog中的列表長度
- 12. 列表的長度是五,但我想列表的長度150
- 13. 長度子序列的串
- 14. 的JavaScript array`s長度保持爲0
- 15. Python:列表的最長公共子序列的長度
- 16. 程序集中長整型值列表的最大長度
- 17. R:獲得ddply中子集的長度
- 18. 點的長度的長度
- 19. 最小長度L(遞歸)的最大連續子序列和
- 20. 下拉列表的長度
- 21. 的JavaScript/JSON。長度爲長度3
- 22. 最短長度子集
- 23. Prolog列表長度
- 24. AngularFire集長度
- 25. 長度列的,由
- 26. 獲取子集熊貓的長度DataFrame
- 27. 子集長和緯度值的範圍
- 28. OCaml中的列表的長度
- 29. Angular.js:表中的列的動態長度
- 30. 發現列表的所有K-長度子集在序言
外觀爲冪配方在[itertools](http://docs.python.org/2/library/itertools.html)。 – kojiro
['itertools.combinations'](http://docs.python.org/2/library/itertools.html#itertools.combinations) – thefourtheye
我確定這是重複的。 – kkuilla