【发布时间】:2019-03-25 18:54:22
【问题描述】:
我已经为此苦苦挣扎了一段时间,所以我认为是时候寻求帮助了。我有两个列表 L1,L2,每个列表都有一定数量的元素长(不一定是相同的长度)。计算所有可能排列然后打印结果的最有效(和 Pythonic)方法是什么?最简单的方法是做
for l1 in L1:
for l2 in L2:
print(l1, l2)
但这在计算时间或编码方面对我来说似乎不是很有效。另外,如果我的列表数量增加,这个表达式会变得非常笨拙。 “itertools”模块似乎没有涵盖这种排列
感谢您提供的所有帮助!
【问题讨论】:
-
itertools.product ?
-
您实际上并不是在寻找排列,而是在寻找两个列表的叉积。为此,您需要
itertools.product。
标签: python python-3.6 permutation