假设我们有一个变量 sets并假设每个变量从 sets 中获取很少的值。所以。现在有一个功能。如何总结to on的所有可能值?
例如,如果和然后我正在寻找:
*大小可以改变。所以它的大小也在变化。我不想以复杂的形式编写,但实际上我正在添加多个函数,每个函数都有自己的变量集。
您可以使用itertools.product
>>> from itertools import product
>>> V = [[1,2],[3,4,5]]
>>> summ = 0
>>> for x in product(*V):
print x
# or call some function : summ += func(*x)
...
(1, 3)
(1, 4)
(1, 5)
(2, 3)
(2, 4)
(2, 5)
您可以使用列表来表示集合。所以 V 是一个列表列表。
V = [[1,2],[3,4,5]]
r = [[]]
for v in V:
r = [ i + [y] for y in v for i in r ]
# at this point, r contains the inputs for your functions
sum = 0
for domain in r:
sum += function(domain)
你所要做的就是定义你的函数来接受一个列表。在您的示例中,它将是这样的:
def function(l):
return l[0] * l[1]