Itertools.permutations返回<object>而不是permutations列表

时间:2016-02-25 22:28:28

标签: python permutation itertools

当我输入时:

import itertools
perm = itertools.permutations(List)

我明白了:

<itertools.permutations object at 0x03042630>

而不是我的排列列表。有人可以帮助我获得包含所有排列的实际列表吗?

2 个答案:

答案 0 :(得分:1)

它返回一个迭代器对象。如果要获取实际列表,可以使用list轻松地在列表中转换此迭代器对象:

import itertools

l = [1, 2, 3]
perm = list(itertools.permutations(l))

给你

[(1, 2, 3), (1, 3, 2), (2, 1, 3), (2, 3, 1), (3, 1, 2), (3, 2, 1)]

答案 1 :(得分:0)

要遍历排列对象,必须使用for循环:

import itertools
for permutation in itertools.permutations(L):
    print permutation