Python 3.x 列表中的Python置换字符串
我有以下包含字符串的列表Python 3.x 列表中的Python置换字符串,python-3.x,Python 3.x,我有以下包含字符串的列表 data=[] data.append('BBBB') data.append('AAAA') data.append('CCCC') 如何使代码打印以下结果?每行不能有重复的值,如BBBBBBBB BBBB AAAA CCCC BBBBAAAA BBBBCCCC AAAABBBB ... snippet ... 这段代码可能会帮助你 from itertools import permutations as per input_nos = int(input('
data=[]
data.append('BBBB')
data.append('AAAA')
data.append('CCCC')
如何使代码打印以下结果?每行不能有重复的值,如BBBBBBBB
BBBB
AAAA
CCCC
BBBBAAAA
BBBBCCCC
AAAABBBB
... snippet ...
这段代码可能会帮助你
from itertools import permutations as per
input_nos = int(input('the number of strings')) #for specifying the input iterations
strings = []
for i in range(input_nos):
strings.append(input())
strings_per = per(strings, input_nos -1 ) # as specified
for i in strings_per:
print(''.join(i))
以下是一个单线解决方案:
>>> from itertools import chain, permutations
>>> print(*chain(*(map("".join, permutations(data, i)) for i in range(1, 3))), sep="\n")
BBBB
AAAA
CCCC
BBBBAAAA
BBBBCCCC
AAAABBBB
AAAACCCC
CCCCBBBB
CCCCAAAA
根据您提供的信息,这应该可以完成您的工作
strings_list = ['AAAA', 'BBBB', 'CCCC', 'DDDD', 'EEEE']
def permute_string(a):
b = []
b.extend(a)
for i in range(len(a)-1):
for j in range(i+1, len(a)):
b.append(a[i] + a[j])
return b
permute_string(strings_list)