itertools.combinations_with_replacement()关于排序

时间:2017-03-29 21:32:06

标签: python itertools

我需要在给定订单和最大值的情况下生成所有“订单”长度列表的列表,其中每个元素的范围(最大值)。 itertools.combinations_with_replacement()不起作用,因为虽然它确实提供了最多,但在我想要的例子中

max, order = 3, 2
[(0,0), (0,1), (0,2), (0,3), (1,0), (1,1), (1,2), (1,3), (2,0), (2,1), (2,2), (2,3), (3,0), (3,1), (3,2), (3,3)]

以下代码简化了一些元素

list(itertools.combinations_with_replacement([x for x in range(max+1)], order))

[(0,0), (0,1), (0,2), (0,3), (1,1), (1,2), (1,3), (2,2), (2,3), (3,3)]

具体来说我需要知道是否有一个itertools或其他包将给我上面的第一个列表。即我需要(0,1)和(1,0)。或者在一个顺序= 3的情况下,(0,0,1)(0,1,0)和(1,0,0)都需要包括在内

1 个答案:

答案 0 :(得分:2)

您正在寻找itertools.product

runAgainstTagNames('Button', function(element) { element.on('tap', anotherTapHandler); });