我正在尝试获得多个数组的笛卡尔积,但数组非常大,我正在尝试优化内存使用。我尝试使用下面的代码实现一个生成器,但它只是返回在某个位置有一个生成器。
import itertools
x = [[1,2],[3,4]]
def iter_tools(*array):
yield list(itertools.product(*array))
print(iter_tools(*x))
Run Code Online (Sandbox Code Playgroud)
当我尝试相同的代码但用return而不是yield它工作正常时。如何通过实现生成器来获得笛卡尔积?