import itertools
s = [1, 2, 3]
print(itertools.permutations(s,2))
print(list(itertools.permutations(s,2)))
lis = list(itertools.combinations('abc', 3))
print(lis)
permutations和combinations都是得到一个迭代器。
combinations方法重点在组合,permutations方法重在排列。
如果在乎内存效率,我们可以使用__next__方法对每个对象进行访问,可以节省内存空间。
test=itertools.permutations(nums,N)
while (True):
try:
i=test.__next__()
item = list(i)
print(item)
except:
StopIteration
break