获得所有排列而无需替换?

Tim*_*Tim 2 python computer-science permutation combinatorics

我希望获得列表的所有排列,但无需重复,无论是否排序.这很难描述,所以我举一个例子.我真的很想知道这个操作的名称,因为我一直都在使用它.另外一个在python中实现这个的简单方法真的可以帮到我.谢谢!

例如

['foo', 'bar', 'la']

==>

['foo', 'bar']
['foo', 'la']
['ba', 'la']
Run Code Online (Sandbox Code Playgroud)

fal*_*tru 8

使用itertools.combinations:

>>> import itertools
>>> list(itertools.combinations(['foo', 'bar', 'la'], 2))
[('foo', 'bar'), ('foo', 'la'), ('bar', 'la')]
Run Code Online (Sandbox Code Playgroud)