例如:如果这两个字符串是'ab'和'cd',我希望得到的输出是:
```python ['abcd', 'acbd', 'acdb', 'cabd', 'cadb', 'cdab'] ```
['abcd', 'acbd', 'acdb', 'cabd', 'cadb', 'cdab']
看到代码中 a
始终在 b
之前 (并且 c
在 d
之前)。我正在努力寻找解决方案。我已经尝试过以下方法:
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
)的顺序。