Tom*_*omR 4 python combinations python-itertools
我正在尝试生成数字列表的所有n项组合,同时保持数字顺序.例如,如果列表是
[1,2,3,4]
Run Code Online (Sandbox Code Playgroud)
长度为3的有序组合将是:
[1,2,3]
[2,3,4]
[1,2,4]
[1,3,4]
Run Code Online (Sandbox Code Playgroud)
需要说明的是,我必须保持数字顺序,因此[1,4,2]不会是理想的结果.
是否有一个功能可以做到这一点,还是一个快速算法可以完成它?实际列表是111,我将选择100项.谢谢.
小智 6
您是否只是寻找给定长度n列表的所有组合?如果是这样,你可以使用itertools的组合.无论哪种方式,你都可能想要使用itertools.
from itertools import combinations
numbers = [1,2,3,4]
for item in combinations(numbers, 3):
print sorted(item)
Run Code Online (Sandbox Code Playgroud)