【发布时间】:2017-11-01 21:08:48
【问题描述】:
我想创建具有重复元素的元组的所有可能组合。
例如,假设我们有 {3,3,0}。 我希望代码返回: (3,3,0) (3,0,3) (0,3,3)
我查看了 itertools 文档和许多堆栈溢出问题,但我没有找到答案。
我该如何实现它?或者,这可以普遍实现吗?
【问题讨论】:
-
{3,3,0}是您的实际符号,它是set? -
from sympy.utilities.iterables import multiset_permutations例如,list(multiset_permutations([3,3,0]))给出[[0, 3, 3], [3, 0, 3], [3, 3, 0]] -
是的,这是一个集合,虽然 python 使它成为 {3,0}。
-
@BillBell 我不想在这个项目中添加另一个包,但是谢谢。
-
请注意,您接受的内容会比较慢。
标签: python-3.x duplicates combinations itertools