获得一组“STRINGS”的组合 - PYTHON

时间:2017-09-04 15:24:23

标签: python string combinations itertools

要获得一组“字符”的可能组合,语法将是:

>>>q=[''.join(p) for p in itertools.combinations('ABC',2)]
>>>q
['AB', 'AC', 'BC']

如何获得“ STRINGS ”组合的可能组合 例如:

  

'A1X2', 'B1', 'C19'

输出应该是:     ['A1X2B1', 'A1X2C19', 'B1C19']

1 个答案:

答案 0 :(得分:1)

只需通过strings"ABC"不是迭代combinations的每个字符,而是迭代strings列表中包含的字符串。并且join的行为相同(python中的字符和字符串没有区别,字符只是大小为1的字符串)

strings = ['A1X2','B1','C19']

q=[''.join(p) for p in itertools.combinations(strings,2)]

结果:

['A1X2B1', 'A1X2C19', 'B1C19']