【发布时间】:2020-12-08 16:56:49
【问题描述】:
我知道如何使用 itertools 获得所有可能的替换组合,但我想通过使用较大集合中有限数量的元素来限制替换组合的数量。
举个例子,我有一套
[0,1,2]
我想获得带有替换的 k 组合 (k=4),但最多使用一组 [0,1,2] 中的 2 个不同元素
所以可以出现在每个组合中的元素集是:
[0,1], [1,2], [0,2].
在这里,我也想避免重复组合,所以在这个例子中[0,0,0,0],[1,1,1,1]或[2,2,2,2]不应该重复.
此示例的输出:
[0,0,0,0]
[0,0,0,1]
[0,0,1,1]
[0,1,1,1]
[1,1,1,1]
[1,1,1,2]
[1,1,2,2]
[1,2,2,2]
[2,2,2,2]
[0,0,0,2]
[0,0,2,2]
[0,2,2,2]
我希望我清楚。
【问题讨论】:
-
欢迎堆栈溢出!不幸的是,这不是代码编写或教程服务。我们要求您提供minimal reproducible example,包括到目前为止您尝试了什么,您的尝试有什么问题?例如,itertools combinations_with_replacement
标签: python combinations itertools