Python 创建最大长度K的N个列表,包括所有可能的订单

Python 创建最大长度K的N个列表,包括所有可能的订单,python,permutation,itertools,Python,Permutation,Itertools,给定Python中长度N的列表: a = [A,B,C] 我想创建所有可能的列表组合,并设置最大长度(在本例中为2)。元素的顺序也很重要。这就是我想要的结果: [A,B],[C] [B,A],[C] [A,C],[B] [C,A],[B] [B,C],[A] [C,B],[A] 我认为这是一个很好的开始。但是我不知道如何得到准确的结果。试试这个: a = ['A', 'B', 'C'] for v in permutations(a): for i in range(0, len

给定Python中长度N的列表:

a = [A,B,C]
我想创建所有可能的列表组合,并设置最大长度(在本例中为2)。元素的顺序也很重要。这就是我想要的结果:

[A,B],[C]
[B,A],[C]

[A,C],[B]
[C,A],[B]

[B,C],[A]
[C,B],[A]
我认为这是一个很好的开始。但是我不知道如何得到准确的结果。

试试这个:

a = ['A', 'B', 'C']
for v in permutations(a):
    for i in range(0, len(v), 2):
        print v[i:i+2]
    print '-'*10
输出:

('A', 'B')
('C',)
----------
('A', 'C')
('B',)
----------
('B', 'A')
('C',)
----------
('B', 'C')
('A',)
----------
('C', 'A')
('B',)
----------
('C', 'B')
('A',)
----------

你不想要
[A]、[B]、[C]
?必须达到最大长度?@Jacquot,是的。从实际意义上说,我正试图计划有多少人可以坐最少数量的汽车。尽管问题比这更复杂。所以我想给所有的车加满油。