如何为数组中的每个部分添加值

时间:2016-04-20 15:30:36

标签: arrays python-3.x dictionary multidimensional-array append

我需要为数组的每个部分添加不同的值。

array1 = [[1,2,3], [4,5,6], [7,8,9], [10,11,13]]
array2 = [["a"], ["b"], ["c"], ["d"]]

期望的输出:

array3 = [["a",1,2,3], ["b",4,5,6], ["c",7,8,9], ["d",10,11,13]]

第一个数组是通过使用Beautiful Soup进行抓取来构建的,因此它是未定义的,直到被刮擦附加。不确定这是否重要,但一旦刮完成,上面的尺寸是正确的。我一直试图使用追加,但我似乎无法让它工作。

1 个答案:

答案 0 :(得分:0)

使用zip并将子列表添加到一起:

array3 = [from_a2 + from_a1 
          for from_a2, from_a1 in zip(array2,array1)
         ]

请注意,如果您想将其设为dict,zip也会在那里工作,因为构造函数可以执行(key,value)次迭代:

data = dict(zip(string.ascii_lowercase,array1))

>>> data
{'d': [10, 11, 13], 'b': [4, 5, 6], 'a': [1, 2, 3], 'c': [7, 8, 9]}

在这种情况下,我使用string.ascii_lowercase作为array1完成之前的所有字母,尽管如果len(array1)>26失败则会失败,在这种情况下,您需要使用包含更多标签的内容