【发布时间】:2021-10-16 04:45:48
【问题描述】:
假设我有三个列表:
a = [0, 1, 2]
b = [3, 4, 5]
c = [6, 7, 8]
我想要一个从每个方法中选择三个值的所有方法的列表,就像一个点网格。我的目标是这样的:
d = [[0, 3, 6], [0, 3, 7], [0, 3, 8], [0, 4, 6], [0, 4, 7], [0, 4, 8], [0, 5, 6], [0, 5, 7], [0, 5, 8],
[1, 3, 6], [1, 3, 7], [1, 3, 8], [1, 4, 6], [1, 4, 7], [1, 4, 8], [1, 5, 6], [1, 5, 7], [1, 5, 8],
[2, 3, 6], [2, 3, 7], [2, 3, 8], [2, 4, 6], [2, 4, 7], [2, 4, 8], [2, 5, 6], [2, 5, 7], [2, 5, 8]]
我想定义一个函数,它可以接受任意数量的迭代,并且可以做我上面所说的。有没有办法做到这一点?
【问题讨论】:
-
当你说“任意数量的可迭代对象”时,它们是在一个容器中,比如一个列表还是一些东西?我,e,
iterables = (a, b, c)? -
好的,如果你问“任意数量的可迭代”,你真的需要说明这些可迭代是如何表达的。了解可迭代对象的大小是否都相同也会有所帮助。
-
@tdelaney 是的,我想我应该考虑一下。
-
@enzo 确实如此!谢谢。
标签: python permutation iterable