我想写这样的东西
S = [ 0, 1, 2 ]
F = [ S.without(i) for i in range(0,len(S)) ]
print F
Run Code Online (Sandbox Code Playgroud)
和Python推出
[[0,1],[0,2],[1,2]]
并没有在网上参考中找到这样的东西.你能帮助我吗?
Python提供itertools.combinations,它完全符合您的要求:
>>> import itertools
>>> s = [0,1,2]
>>> list(itertools.combinations(s, len(s) - 1))
[(0, 1), (0, 2), (1, 2)]
Run Code Online (Sandbox Code Playgroud)
更好的是,它返回一个生成器,因此您可以轻松地迭代所有组合而无需使用太多内存.
| 归档时间: |
|
| 查看次数: |
4022 次 |
| 最近记录: |