Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/visual-studio-code/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 3.x 如何定义从索引集到不确定域集的函数?_Python 3.x - Fatal编程技术网

Python 3.x 如何定义从索引集到不确定域集的函数?

Python 3.x 如何定义从索引集到不确定域集的函数?,python-3.x,Python 3.x,我想给这样的东西下定义 list([[i0,i1,i2,i3, ..., ik]] for i0 in T[0] for i1 in T[1] for i2 in T[2] for i3 in T[3] for ...) 因为k是不确定的,我不能这样做 list([[i0,i1,i2,i3]] for i0 in T[0] for i1 in T[1] for i2 in T[2] for i3 in T[3]). 有普遍的解决办法吗 非常感谢 嵌套的fors将生成T中子列表的笛卡尔乘积。具

我想给这样的东西下定义

list([[i0,i1,i2,i3, ..., ik]] for i0 in T[0] for i1 in T[1] for i2 in T[2] for i3 in T[3] for ...)
因为k是不确定的,我不能这样做

list([[i0,i1,i2,i3]] for i0 in T[0] for i1 in T[1] for i2 in T[2] for i3 in T[3]).
有普遍的解决办法吗


非常感谢

嵌套的
for
s将生成
T
中子列表的笛卡尔乘积。具有一个函数,该函数将为您提供这些值的迭代器,您可以像这样使用:

from itertools import product
T = [[1, 2, 3], [4, 5, 6], [7, 8, 9], [10,11, 12]]
p = product(*T)
for i in p:
    print(i)
(1,4,7,10)
(1,4,7,11)
(1,4,7,12)
(1,4,8,10)
(1,4,8,11)
(1,4,8,12)
(1,4,9,10)
(1,4,9,11)

(3,6,9,10)
(3,6,9,11)
(3、6、9、12)


当然,如果需要列表中的值,也可以将其传递到
list()

是您要查找的吗?它可以工作。给定一个不定长的复杂列表P,其形式类似于[[1,1,1],[1,2,3],[4,5]],我定义了PJ=list(乘积(*P)中x的x)。谢谢