-1

我正在尝试以这种方式创建字典:

有两组数据:之前和之后,每组都是100个元素的数组(0到99)

还有一个值与之前和之后的每个组合相关联,它是一个大小为 10000X1 的向量。

我想创建一个字典,以便我可以使用字典键引用向量中的值。

例如(对于 3 个元素而不是 100 个)

之前 = ['0','1','2'],之后 = ['0','1','2'],向量 = [1 2 3 4 5 6 7 8 9],

字典输出应该是:

(0,0): 1, (0,1): 2, (0,2): 3, (1,0): 4, (1,1): 5, (1,2): 6, (2 ,0): 7, (2,1): 8, (2,2):9

我知道如何通过单独定义键然后使用 dict(zip()) 函数来为这么几个元素执行此操作,但是对于如此大的集合,是否有更好的方法来执行此操作。我正在考虑使用循环,但似乎无法让它产生 (0,0)、(0,1)、(0,2) .... 等作为键。

4

1 回答 1

2

itertools.product(range(100), range(100))将为您提供一个生成所需所有键的迭代器,您可以itertools.izip使用目标向量生成字典。

于 2013-04-01T19:40:42.110 回答