我需要找到列表的所有排列

时间:2019-09-03 11:41:33

标签: python

我需要找到用户输入的4位数字的所有排列

我已经尝试过使用itertools.permutation,但是它不起作用,我只能使用预设列表来使代码正常工作

import itertools
NumInput = str(input('Type here: '))
magicList = list(NumInput)
itertools.permutations(magicList)
print(magicList)

我希望itertools.permutation可以打印所有可能的烫发,但不会。我需要代码来打印输入的4位数字的所有可能组合,但是我不知道如何

1 个答案:

答案 0 :(得分:0)

您的代码几乎是正确的:itertools.permutations是一个函数,它返回一个 iterator ,但不输出任何内容。因此,获取输出并打印输出是您的工作,就像这样:

# get the itertools.combinations iterator
perms = itertools.permutations(magicList) 
# convert to a list
perms = list(perms)
# print it
print(perms) 

结果:

[('1', '2', '3', '4'), ('1', '2', '4', '3'), ...