我有两个不同的列表list1 = ['A','B']
和list2 = ['C','D','E']
。我希望能够找到这两个列表元素之间所有可能的收缩。对于本例,我希望有一个代码(最好是Python、Mathematica或MATLAB),它获取上面的列表并返回:
AC,BD
、AC,BE
、AD,BC
、AD,BE
、AE,BC
、AE,BD
所有可能的宫缩。我想能够做到这一点的可变大小的列表(但总是其中2个)。我已经用Python的itertools玩了很多次了,但是我不知道它是如何使用两个列表的。任何帮助都将不胜感激。你知道吗
Tags:
以下是我的版本:
这将输出:
请注意,为了简短起见,我没有构建项目列表,而是直接迭代字符串。两个列表中的哪一个得到
permutations
和哪一个得到combinations
并不重要,这只是改变了输出的顺序。permutations
接受所有可能的排序,而combinations
返回排序的排序。这样,每一次收缩就精确一次。你知道吗对于每个收缩,您将得到两个序列
s1
和s2
,收缩是在每个序列中like索引的元素之间。','.join(a+b for a,b in zip(s1,s2))
对于这样的收缩来说是一个很好的字符串。你知道吗相关问题 更多 >
编程相关推荐