Python 如何使函数foo生成所有的点?

Python 如何使函数foo生成所有的点?,python,Python,这是我的密码: point = (3,6,9) # let all the elements of the tuple be none negative integers def foo(point): for i in range(point[0]+1): for j in range(point[1]+1): for k in range(point[2]+1): yield (i,j,k) 我的问题是:

这是我的密码:

point = (3,6,9) # let all the elements of the tuple be none negative integers


def foo(point):
    for i in range(point[0]+1):
        for j in range(point[1]+1):
            for k in range(point[2]+1):
                yield (i,j,k)
我的问题是: 如果我事先不知道元组的长度呢? 如何使function
foo
将任何元组作为参数并执行相同的操作?e、 g.如果
点=(3,6,9,0,7)
怎么办

改用:

from itertools import product

def foo(point):
    for combo in product(*(range(i + 1) for i in point)):
        yield combo