Python:迭代列表并返回列表中所有字符串的元组排列?



我有一个元素列表:list = [' a ','B',C']。我如何遍历这个列表并返回以下内容:[AB, AC, BC]?

注意:我只想要唯一对,而不是[AA, BB, CC…]或[AB, BA, BC, CB…]

您需要itertools.combinations:

In [1]: from itertools import combinations
In [2]: for c in combinations(['A', 'B', 'C'], 2):
...:     print(c)
...: 
('A', 'B')
('A', 'C')
('B', 'C')

你可以这样做

lst = ['A','B','C']
result=[]
for i in range(len(lst)):
for j in range(i+1,len(lst)):
result.append(lst[i]+lst[j])