Python 2.7 查找组合长度大于所用变量的组合

Python 2.7 查找组合长度大于所用变量的组合,python-2.7,math,itertools,Python 2.7,Math,Itertools,我试着从2个列表中找出5个长度组合,但找不到任何有效的 x = [5,7] abc = list(itertools.combinations((x),5)) 我得到的只是[] 希望得到[5,7]的所有可能组合,但长度为5,如[5,7,7,5,7] 这似乎是可能的,我尝试过很多不同的事情 再次感谢您的帮助。您获得[]的原因确实是(正如标题所示)您希望长度大于元素数。鉴于,声明: itertools.组合(iterable,r): 返回输入iterable元素的r length子序列 我想你需要

我试着从2个列表中找出5个长度组合,但找不到任何有效的

x = [5,7]
abc = list(itertools.combinations((x),5))
我得到的只是[]

希望得到[5,7]的所有可能组合,但长度为5,如[5,7,7,5,7]

这似乎是可能的,我尝试过很多不同的事情


再次感谢您的帮助。

您获得
[]
的原因确实是(正如标题所示)您希望长度大于元素数。鉴于,声明:

itertools.组合(iterable,r):

返回输入iterable元素的r length子序列

我想你需要的是(文件的下一段):

或者,正如你的例子所暗示的,也许你不想要组合,而想要排列?问题是,似乎不可能对组合执行相同的操作。但也许a会起作用

>>> list(itertools.product(x, repeat=5))
[(5, 5, 5, 5, 5), (5, 5, 5, 5, 7), (5, 5, 5, 7, 5), (5, 5, 5, 7, 7), (5, 5, 7, 5, 5), (5, 5, 7, 5, 7), (5, 5, 7, 7, 5), (5, 5, 7, 7, 7), (5, 7, 5, 5, 5), (5, 7, 5, 5, 7), (5, 7, 5, 7, 5), (5, 7, 5, 7, 7), (5, 7, 7, 5, 5), (5, 7, 7, 5, 7), (5, 7, 7, 7, 5), (5, 7, 7, 7, 7), (7, 5, 5, 5, 5), (7, 5, 5, 5, 7), (7, 5, 5, 7, 5), (7, 5, 5, 7, 7), (7, 5, 7, 5, 5), (7, 5, 7, 5, 7), (7, 5, 7, 7, 5), (7, 5, 7, 7, 7), (7, 7, 5, 5, 5), (7, 7, 5, 5, 7), (7, 7, 5, 7, 5), (7, 7, 5, 7, 7), (7, 7, 7, 5, 5), (7, 7, 7, 5, 7), (7, 7, 7, 7, 5), (7, 7, 7, 7, 7)]
编辑:你的问题真的很接近这个问题吗

>>> list(itertools.product(x, repeat=5))
[(5, 5, 5, 5, 5), (5, 5, 5, 5, 7), (5, 5, 5, 7, 5), (5, 5, 5, 7, 7), (5, 5, 7, 5, 5), (5, 5, 7, 5, 7), (5, 5, 7, 7, 5), (5, 5, 7, 7, 7), (5, 7, 5, 5, 5), (5, 7, 5, 5, 7), (5, 7, 5, 7, 5), (5, 7, 5, 7, 7), (5, 7, 7, 5, 5), (5, 7, 7, 5, 7), (5, 7, 7, 7, 5), (5, 7, 7, 7, 7), (7, 5, 5, 5, 5), (7, 5, 5, 5, 7), (7, 5, 5, 7, 5), (7, 5, 5, 7, 7), (7, 5, 7, 5, 5), (7, 5, 7, 5, 7), (7, 5, 7, 7, 5), (7, 5, 7, 7, 7), (7, 7, 5, 5, 5), (7, 7, 5, 5, 7), (7, 7, 5, 7, 5), (7, 7, 5, 7, 7), (7, 7, 7, 5, 5), (7, 7, 7, 5, 7), (7, 7, 7, 7, 5), (7, 7, 7, 7, 7)]