-4

我需要创建一个 python 函数,以递归方式查找函数内所有可能的设定长度字母组合。例如,在单词 'unicorn' 中使用它来查找长度为 3 的所有组合将返回:

['orN','crN','coN','cor','irN','ioN','ior','icN','icr','ico','nrN','noN','也不是','ncN','ncr','nco','niN','nir','nio','nic','urN','uoN','uor','ucN','ucr' ,'uco','uiN','uir','uio','uic','unN','unr','uno','unc','uni']

我什至不知道从哪里开始。请帮帮我。

4

1 回答 1

2

itertools.combinations

print [''.join(x) for x in itertools.combinations('unicorn', 3)]

如果您想要与您要求的输出完全相同的输出:

>>> print [''.join(x) for x in itertools.combinations('unicorN', 3)][::-1]
['orN', 'crN', 'coN', 'cor', 'irN', 'ioN', 'ior', 'icN', 'icr', 'ico', 'nrN', 'noN', 'nor', 'ncN', 'ncr', 'nco', 'niN', 'nir', 'nio', 'nic', 'urN', 'uoN', 'uor', 'ucN', 'ucr', 'uco', 'uiN', 'uir', 'uio', 'uic', 'unN', 'unr', 'uno', 'unc', 'uni']
于 2012-10-14T19:14:57.930 回答