如何创建一个程序,显示所有可能的组合

时间:2013-06-06 21:19:23

标签: python combinations

我需要帮助在python中创建一个程序,向您展示所有可能的组合。 例如: 我给它数字“1 2 3” 我给了我“1 3 2”,“3 2 1”,“3 1 2”,“2 1 3”,“2 3 1”。

2 个答案:

答案 0 :(得分:4)

使用itertools。它让生活变得轻松:

import itertools

perms = itertools.permutations([1,2,3])

for perm in perms:
    print perm

>>>(1, 2, 3)
>>>(1, 3, 2)
>>>(2, 1, 3)
>>>(2, 3, 1)
>>>(3, 1, 2)
>>>(3, 2, 1)

答案 1 :(得分:0)

from itertools import combinations as c
for x in c([1, 2, 3],2): print x
(1, 2)
(1, 3)
(2, 3)
print [x for x in c(range(5), 3)]                                        
[(0, 1, 2), (0, 1, 3), (0, 1, 4), (0, 2, 3), (0, 2, 4), (0, 3, 4), (1, 2, 3), (1, 2, 4), (1, 3, 4), (2, 3, 4)]