【发布时间】:2016-07-15 15:08:03
【问题描述】:
我正在尝试生成所有可能的方式来在 Python 中交错任意两个任意字符串。
例如:如果两个字符串是'ab'和'cd',我希望得到的输出是:
['abcd', 'acbd', 'acdb', 'cabd', 'cadb', 'cdab']
请参阅 a 始终在 b 之前(并且 c 在 d 之前)。我正在努力寻找解决方案。我已经尝试过如下所示的 itertools:
import itertools
def shuffle(s,t):
string = s+t
for i in itertools.permutations(string):
print(''.join(i))
shuffle('ab','cd')
但正如预期的那样,这将返回所有可能的排列,而不管a 和b(以及c 和d)的顺序。
【问题讨论】:
标签: python permutation itertools