Python 3.x 如何在Python3中创建组合列表?

Python 3.x 如何在Python3中创建组合列表?,python-3.x,python-3.5,Python 3.x,Python 3.5,我想列一张这样的清单: seq = [1,2,3] \# implementation print(result) \# [[1], [1,2], [1,2,3], [2], [2,3], [3]] 您可以使用itertools组合: 有关更多详细信息,请查看此信息您可以使用itertools组合: 您可以查看此文件以了解更多详细信息最后,我可以自己找到解决方案: N = 3 print([list(range(i, j)) for i in range(1,N+2) for j in ran

我想列一张这样的清单:

seq = [1,2,3]
\# implementation
print(result) \# [[1], [1,2], [1,2,3], [2], [2,3], [3]]

您可以使用itertools组合:


有关更多详细信息,请查看此信息

您可以使用itertools组合:


您可以查看此文件以了解更多详细信息

最后,我可以自己找到解决方案:

N = 3
print([list(range(i, j)) for i in range(1,N+2) for j in range(i+1,N+2)])
或者


谢谢大家!

最后我可以自己找到一个解决方案:

N = 3
print([list(range(i, j)) for i in range(1,N+2) for j in range(i+1,N+2)])
或者


谢谢大家!

看看这个。这个问题是针对Java的,但是第一个回答也显示了python中的算法。你想要的是powerset。那么,我是否需要制作一个原始的powerset函数来从powerset中删除像[1,3]这样的不连续元素?看看这个。这个问题是针对Java的,但是第一个回答也显示了python中的算法。你想要的是powerset。那么,我必须制作一个原始的powerset函数才能从powerset中删除像[1,3]这样的不连续元素吗?我知道itertools,但我不想制作像[1,3]这样的不连续元素。我知道itertools,但我不想制作像[1,3]这样的不连续元素。